箱线图

什么是箱线图?

箱线图(又名箱须图)使用箱子和线条来描绘一个或多个数字数据组的分布情况。箱子的边界表示数据中间50%的范围,中间的线标记中位数。线条从每个箱子延伸出去,以捕获剩余数据的范围,在线条边缘放置的点用来表示异常值。

Box plot showing daily downloads grouped by month.

上面的示例箱线图显示了某款虚构数字应用按月分组的天下载量。从这张图中我们可以看到,下载量从一月的每天约 75 次逐渐增加到八月的每天约 95 次。同时,十一和十二月的下载量中位数似乎略有下降。点表示下载量异常的天数:六月份有两天和十月份有一天与其他月份的同一天相比下载量较低。与等效的折线图相比,箱须图提供了更清晰的数据总体趋势表示。

Line chart showing daily downloads.

何时使用箱线图


箱线图用于展示数值数据的分布情况,尤其是在需要比较多个组的数据时。它们的设计目的是提供高层次的概览信息,从而快速了解数据集的对称性、偏斜度、方差和异常值等基本信息。通过箱线图,可以轻松看出数据的主要集中区域,并进行不同组之间的比较。

然而,箱线图的简洁性也限制了它能展示的数据密度。使用箱线图,我们失去了观察分布详细形状的能力,例如无法判断分布的_模态_ (“驼峰”或峰值)数量和偏斜度等异常情况。

Two different histograms result in the same box plot representation.

在_直方图_背后的数据集,在中间面板中会生成相同的箱线图。

解读箱线图

箱线图的构建基于数据集的四分位数,即将数据集分成相等四份的数值。第一四分位数(Q1)大于 25%的数据,小于其余 75%。第二四分位数(Q2)位于中间,将数据分成两半。Q2 也被称为中位数。第三四分位数(Q3)大于 75%的数据,小于剩余 25%。在箱线图中,箱子的两端及其中心线标记了这三个四分位数的位置。

Diagram showing how box and whiskers are derived from a set of data.

Q3 和 Q1 之间的距离称为四分位距(IQR),这对箱线图从箱子延伸出的须的长度起着重要作用。每根须延伸到每个翼中距离在 1.5 倍 IQR 范围内的最远数据点。任何超出该距离的数据点被视为异常值,并用点标记。箱须的长度还有其他定义方式,将在下文讨论。

当数据分布对称时,中位数会位于箱体的正中心:Q1 与 Q2 之间的距离应与 Q2 与 Q3 之间的距离相同。异常值应均匀分布在箱体的两侧。如果分布存在偏斜,中位数将不会位于箱体中央,而是偏向一侧。你可能还会发现箱线长度不平衡,其中一侧较短且没有异常值,而另一侧则有一条长尾,并有许多更多异常值。

Data shape can affect the way a box and whiskers plot looks.

数据结构示例

Box plots can be generated from a table with columns for data values and data groups

可视化工具通常能够从一列原始、未聚合的数据生成箱线图;箱线图的箱体两端、须线和离群值的统计数据会作为图表创建过程的一部分自动计算。当需要为多个组绘制箱线图时,通常会用第二列来表示不同的组,例如上表所示。

使用箱线图的最佳实践


比较多个组

箱线图在需要比较不同组数据分布时效果最佳。它们在数据总结上非常紧凑,通过箱线和须线的位置很容易比较各组。

当只有一组数据的分布需要绘制时,箱线图的优势就不明显了。箱线图仅提供数据的高级概述,无法展示数据分布形状的细节。对于只有一组数据的情况,我们可以选择更详细的图表类型,如直方图 或密度曲线。

考虑组的顺序

如果箱线图中绘制的组别没有固有的顺序,那么你应该考虑按照能突出模式和见解的顺序来排列它们。对组别进行排序的一种常见方法是按照中值大小进行排序。

Side-by-side comparison of box plot sorted by team name and median score.

常见的箱线图选项


垂直箱线图与水平箱线图

通过本文的观察,可以将箱线图对齐,使得箱子垂直放置(组别在水平轴上)或水平放置(组别垂直排列)。当有很多组别需要绘制,或者组别名称较长时,水平方向可以是一种有用的格式。它还允许在不旋转或截断的情况下渲染长类别名称。另一方面,当分组变量基于时间单位时,垂直方向可以是一种更自然的格式。

Box plots can be oriented with horizontal boxes or vertical boxes.

可变箱宽和缺口

某些可视化工具提供了将额外统计信息编码到箱线图中的选项。当收集的数据代表从较大总体中抽取的样本时,这很有用。

当数据表示样本时,使用凹口来显示中位数最可能的值。当对多个组进行比较时,可以根据它们的范围是否重叠来判断中位数之间的差异是否具有统计学意义。如果任何凹口区域重叠,那么我们不能说中位数在统计上存在差异;如果它们没有重叠,那么我们可以有很好的信心认为真实的中位数存在差异。

Notches in a box plot indicate uncertainty about the median's true value.

这个图表明,工艺 B 制造了具有更好(更高)失效时间的组件,但重叠的凹口表明中位数的差异在统计上并不显著。

箱宽可以用作指示每个组中有多少数据点。箱宽通常按数据点数量的平方根进行缩放,因为平方根与我们对真实值的不确定性(即标准误差)成正比。由于解释箱宽并不总是直观的,另一种替代方法是在每个组名旁边添加注释,注明每个组中有多少点。

Box width can be used as an indicator of how many data points were recorded for each group of data.

须范围和离群值

定义箱线图中箱体两端延伸的须线(whiskers)的最大长度有多种方法。如前所述,传统的须线延伸方法是延伸至每个箱体端点 1.5 倍四分位距(IQR)范围内的最远数据点。或者,你也可以将须线标记放在其他数据百分位数上,就像箱体组件位于 25th、50th 和 75th 百分位数一样。

常见的替代须线位置包括第9和第91百分位数,或第2和第98百分位数。这些是基于正态分布的性质,相对于三个中心四分位数而言。在正态分布下,第9和第25(或第91和第75)百分位数之间的距离应与第25和第50(或第50和第75)百分位数之间的距离大致相同,而第2和第25(或第98和第75)百分位数之间的距离应与第25和第75百分位数之间的距离大致相同。这有助于辅助箱线图的一目了然特性,判断数据是否对称或偏斜。

Whisker lengths can be defined by various methods like data percentiles or a multiple of box length.

当使用这些替代的须线规范时,最好在图上或附近注明这一点,以避免与传统须线长度公式混淆。

字母值图

由 Hofmann、Kafadar 和 Wickham 开发,字母值图是标准箱线图的扩展。字母值图使用多个箱子来包含数据集中越来越大的比例。第一个箱子仍然覆盖中心 50%,第二个箱子从第一个箱子延伸出去,覆盖剩余面积的一半(总体 75%,两端各剩余 12.5%)。第三个箱子覆盖剩余面积的一半(总体 87.5%,两端各剩余 6.25%),以此类推,直到程序结束,剩余的点被标记为离群值。

We can compare multiple statistics on multiple items by faceting bar charts with consistent color choices for each item.

字母值图是由这样一个事实驱动的:当收集更多数据时,可以做出更稳定的尾部估计。此外,更多的数据点意味着更多地将被标记为异常值,无论是否真实。虽然字母值图在显示一些分布细节(如模态)方面仍然有所欠缺,但在有大量数据可用时,它可以是更全面地进行组间比较的方法。

相关图

直方图

如上所述,当你只想绘制单个组的分布时,建议使用直方图  而不是箱线图。虽然直方图不像箱线图那样直接显示四分位数,但关于分布形状的额外信息通常是一种值得的权衡。

对于两个或多个组,多个直方图可以像水平箱线图一样堆叠在一列中。然而,需要注意的是,随着需要绘制的组数增多,直方图会变得越来越嘈杂,难以辨认每个组的形状。此外,缺乏统计标记使得组间比较更加困难。由于这些原因,箱线图的汇总信息在比较组间差异时可能更可取。

Side-by-side comparison of faceted histogram and box plot.

小提琴图

箱线图的另一种替代方案是小提琴图 。在小提琴图中,每个组的分布由一条密度曲线表示。在密度曲线中,每个数据点不像在直方图中那样落入单个箱中,而是为总分布贡献一小块面积。小提琴图是一种比较组间分布的紧凑方式。通常,人们会在小提琴图上添加额外的标记,以同时提供标准箱线图的信息,但这可能会使最终图形的阅读变得更为杂乱。

Side-by-side comparison of box plot and violin plot.

可视化工具


根据你使用的可视化工具,箱线图可能不是可选的基本图表类型。即使可以创建箱线图,添加凹口或更改须线定义等高级选项也并非总是可行。然而,即使是简单的箱线图仍然是一种快速筛选出关键要素、迅速理解数据的好方法。

箱线图是用于数据可视化的多种不同图表类型之一。通过阅读我们关于基本图表类型如何选择数据可视化类型的文章,或浏览图表类别的全部文章,可以了解更多信息。