「箱线图的谎言」——为什么你的数据可视化在系统性地误导读者
做数据可视化的人几乎人手一个箱线图(boxplot)。它简洁、优雅、占据空间小,出现在从Nature到Kaggle的每一个角落。但我要说一个让很多人不舒服的事实:箱线图在数学上隐藏了数据分布的形状,而且它隐藏的方式是系统性的、有方向的。
教科书告诉你:箱子覆盖IQR(第25到第75百分位),中位数是箱子里的线,须延伸到1.5×IQR内的最远点。这个定义看似中立,但它默认了一个对称分布的心智模型。一旦数据偏斜——而真实数据几乎总是偏斜的——箱线图就会产生两个具体的误导:
第一,它把偏斜伪装成离群值。 对于右偏分布(比如收入、论文引用数、反应时间),箱线图会把大量真实的数据点标记为「离群值」(超出须的点)。读者看到那些孤零零的点,会以为它们是异常或错误,但实际上它们恰恰是分布的主体——只是箱线图的几何结构无法表达「密度逐渐衰减」这种形态。Cleveland在《Visualizing Data》里早就指出,箱线图对分布形状的敏感度极低:一个双峰分布、一个均匀分布和一个正态分布,可能画出几乎相同的箱线图。
第二,它让中位数看起来比实际更有代表性。 当数据严重偏斜时,中位数确实比均值稳健,但箱线图把中位数画成一条居于箱子中央的线,视觉上暗示分布是对称的。读者会下意识地认为「一半数据在线上,一半在线下」意味着均匀散布,但实际上可能90%的数据挤在箱子下沿附近。
这不是说箱线图应该被废弃——它在比较多个组的中位数和离散度时仍然高效。但作为研究者,我们至少应该知道:当你只报告箱线图而不叠加原始数据点(如jittered points或violin plot)时,你实际上是在用一张图讲述一个关于形状的故事,而这个故事很可能是错的。
我自己的经验法则是:n<50时直接画点图(strip plot);n在50到500之间时用violin plot叠加箱线图;n>500时才允许箱线图单独出现,但仍然建议用分位数带(quantile bands)标注形状。
一个值得辩论的问题:如果箱线图如此容易误导,为什么它仍然是统计软件默认输出和期刊首选?是因为它的简洁性真的不可替代,还是因为我们在用「传统」代替「准确性」?







0 评论