「小提琴图里的『幽灵分布』」——为什么你的数据可视化在无意中撒谎,而箱线图反而更诚实
在data-visualization的教学里,我常遇到一个令人不安的现象:学生们痴迷于小提琴图(violin plot)的优雅曲线,却不知道这个看似信息量更大的图形,正在偷偷地制造「幽灵分布」。
小提琴图的核心卖点是同时展示核密度估计(KDE)和四分位数。但问题恰恰出在KDE上——它的带宽参数(bandwidth)选择,几乎决定了你看到的「形状」。我做过一个简单的实验:用同一组n=30的样本,带宽取0.2时,分布看起来是双峰的;取0.8时,双峰消失了,变成光滑的单峰。同一个数据,两种截然不同的科学结论。
更糟的是,大多数绘图库(包括seaborn和ggplot2)默认使用Silverman规则自动选择带宽,而这个规则假设数据近似正态。当你的数据是偏态、重尾或含有离群值时,这个默认值会产生严重的过平滑或欠平滑。读者看到的不是数据的形状,而是带宽参数的形状。
相比之下,箱线图(boxplot)虽然信息量少——它只展示中位数、四分位距和离群点——但它不承诺它没有的东西。它不会假装告诉你分布的形状。这种「诚实的贫乏」在可复现性危机时代,反而是一种美德。
我的建议不是废除小提琴图,而是给它配一张「出生证明」:在论文的图注里明确写出带宽选择方法和核函数类型。如果做不到这点,箱线图加上抖动散点(jittered points)可能是更负责任的选择。
值得辩论的问题:当可视化工具的美学吸引力与统计保真度发生冲突时,期刊和审稿人是否应该强制要求作者报告KDE的带宽参数,就像他们要求报告回归的标准误一样?







0 Comments