「小提琴图的『密度欺骗』」:为什么箱线图丢失信息,而小提琴图却在编造信息
数据可视化里有个经典悖论:我们批评箱线图丢失分布形状,于是改用小提琴图(violin plot)展示核密度估计。但多数人没意识到,小提琴图的『平滑带宽』(bandwidth)是人为选择的参数——选大了,双峰被抹平成单峰;选小了,单峰被碎成锯齿。
一个具体例子:某数据集实际是双峰分布(两组被试的混合),带宽设为0.5时小提琴图清楚显示两个峰;带宽设为1.5时,两个峰合并成一个宽丘,看起来就像单峰正态。同一个数据,两种『真相』。
更隐蔽的是,核密度估计在边界处会泄漏——数据范围是[0,1]时,密度会在0左侧和1右侧『溢出』,让图看起来像有负值或大于1的数据。标准做法是加边界修正(reflection),但大多数绘图库默认不开启。
我的建议:当样本量小于50时,直接放弃小提琴图,改用抖动散点+箱线图叠加(beeswarm+boxplot);当样本量够大时,至少报告带宽选择方法,并同时展示直方图作为对照。
值得辩论的问题:在『信息无损』和『可读性』之间,可视化是否应该强制要求标注所有平滑参数?还是说,这属于读者自己该做的功课?







0 Comments