我想知道为什么我们在海生图书馆中有箱线图时却有箱线图。
我知道一件事是箱线图优化了表示数据的方式,特别是对于大型数据集,但我不知道为什么,除此之外,我没有任何充分的理由使用箱线图。
箱线图将中位数显示为中心线(第 50 个百分位数),然后将第 25 个百分位数和第 75 个百分位数显示为框边界。然后使用 IQR 方法计算离群值边界(例如,上边界为 1.5 * IQR + Q3)。 Q3 是数据的第三个四分位数或第 75 个百分位数(75% 的数据低于此值)。异常值胡须之外的异常值显示为不同的点。
Boxenplots(实际上在原始论文和 lvplot R 包中称为字母值图)以不同的方式显示分布,并且更适合较大的数据集。经典箱线图可能有太多离群值,并且不能显示尽可能多的有关分布的信息。字母值图(箱线图)以中位数(Q2,第 50 个百分位)作为中心线。向外的每个连续级别都包含剩余数据的一半。因此,从中心线开始的前两个部分包含 50% 的数据。之后,接下来的两个部分包含 25% 的数据。这种情况一直持续到我们处于异常值水平。每个级别的阴影都变浅。有 4 种计算离群值的方法(论文中描述并在 seaborn 中可用)。默认情况下,每个尾部都会有大约 5-8 个异常值。
我用Diziet的好身材来插画:
原始论文(来自包括 Hadley Wickham 在内的作者)在seaborn boxenplot 文档中链接。
每层外部的数据量为
outside = 2^(-l)
,其中 l = 1, 2, 3...
,每层内部的数据量为 inside = 1-outside
。对于前几个级别,四舍五入到 3 位有效数字:
l inside outside
-------------------
1 50.0% 50.0%
2 75.0% 25.0%
3 87.5% 12.5%
4 93.75% 6.25%
5 96.875% 3.125%
6 98.438% 1.562%
7 99.219% 0.781%
8 99.609% 0.391%
9 99.805% 0.195%
根据我对描述“boxenplot”(或作者所说的“字母值图”)概念的论文的理解,目标是提供比boxplot
更好的数据分布表示(特别是当存在大量离群值时),但无需选择特定参数,例如
violinplot
使用的 KDE 函数,如果选择不当,可能会扭曲分布的外观以下是三种类型图的比较: