在以下示例中,使用公式接口,您将创建一个箱线图,展示 Boston数据框中数值型 crim 在不同 rad 唯一取值下的分布。然后,使用 varwidth 参数生成可变宽度的箱线图,指定对数变换的 y 轴,并将 las 参数设为 1,以获得横向的 x 轴与 y 轴标签。
最后,使用 title() 函数添加标题 "Crime rate vs. radial highway index"。
# Create a variable-width Box Plot with log y-axis & horizontal labels
boxplot(crim ~ rad, data = Boston,
varwidth =TRUE, log ="y", las =1)# Add a title
title("Crime rate vs. radial highway index")技术支持
boxplot()函数展示数值变量y在第二个变量x的不同唯一水平之间的分布差异。要想有效,这个第二变量的唯一水平不应过多(例如,10 个或更少较好;远多于此会使图形难以解读)。boxplot()函数还包含多个可选参数,本练习要求您使用其中三个以获得信息更丰富的图形:varwidth允许使用可变宽度的箱线图,以显示各数据子集的大小差异。log允许对 y 值进行对数变换。las允许使用更易读的坐标轴标签。何时应使用箱线图
当您有一个连续变量,并按一个分类变量进行划分时。
当您想比较各类别中该连续变量的分布时。
直方图 vs. 箱线图
水平线称为“须”(whiskers),其定义更为复杂。每根须延伸至四分位距的一点五倍,但最终会限制在能达到的实际数据点处。
下图给出了技术性定义,但在实践中,您可以将须理解为延伸到足以让其之外的任何点都被视为极端值的范围。
如前所述,箱线图的强大之处在于可以一次比较多个分布。此处,王室家族按年代从最早(顶部)到最新(底部)排序。
可以看到一个趋势:自十四世纪的金雀花王朝以来,箱体逐渐右移,表明新君主登基的年龄在上升。
戈德温家族和布卢瓦家族仅显示为一条线,因为各自只有一位国王。安茹王朝只有三位国王,形成了只有一侧须的箱体,而非两侧。
请注意,丹麦王室和温莎王室的箱线图上显示了一些点。这些是极端值,即位于须范围之外的数值。温莎王室最左侧的离群点是伊丽莎白二世,她在 26 岁时登基。
boxplot()函数在以下示例中,使用公式接口,您将创建一个箱线图,展示 Boston 数据框中数值型
crim在不同rad唯一取值下的分布。然后,使用varwidth参数生成可变宽度的箱线图,指定对数变换的 y 轴,并将las参数设为 1,以获得横向的 x 轴与 y 轴标签。最后,使用
title()函数添加标题"Crime rate vs. radial highway index"。运行上述代码后,会生成如下结果:
亲自试一试。
如需进一步了解箱线图,请观看我们课程Understanding Data Visualization中的这段视频。
本内容摘自 DataCamp 的 Understanding Data Visualization 课程(作者 Richie Cotton)和我们的 Data Visualization in R 课程(作者 Ronald Pearson)。