箱线图是一种图表,它能很好地指示数据中值的分布情况。
箱线图提供了数据对称性和偏度的一些指示。
创建箱线图的数据集
在 R 中,我们首先需要加载要创建箱线图的数据集。
在本教程中,我们将使用内置数据集 mtcars
来创建箱线图。
让我们看看我们将使用的数据集的前六行,
# use head() to load first six rows of mtcars dataset
head(mtcars)
输出
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
我们将为此数据集创建条形图。
在 R 中创建箱线图
在 R 中,我们使用 boxplot()
方法创建箱线图。例如,
# boxplot for ozone reading of airquality dataset
boxplot(mtcars$mpg)
输出

在上面的示例中,我们使用了 boxplot()
函数和 $
运算符来创建 mtcars
数据集的 mpg
读数的箱线图。
我们可以传递额外的参数来控制图表的外观。
在 R 中为箱线图添加标题、标签、新颜色
我们可以在 R 中添加标题、为轴提供标签并更改箱线图的颜色。例如,
# add title, label, new color to boxplot
boxplot(mtcars$mpg,
main="Mileage Data Boxplot",
ylab="Miles Per Gallon(mpg)",
xlab="No. of Cylinders",
col="orange")
输出

在上面的图中,我们可以看到我们已经添加了标题,x 轴和 y 轴的标签,并更改了箱线图的颜色。
这里,
main
- 添加标题"里程数据箱线图"
xlab
- 为 x 轴添加标签"气缸数"
ylab
- 为 y 轴添加标签"每加仑英里数 (mpg)"
col = "Orange"
- 将箱线图的颜色更改为橙色
R 中的箱线图公式
在 R 中,函数 boxplot()
还可以接受 y~x
形式的公式,其中 y
是一个数值向量,它根据 x
的值进行分组。
例如,在我们的数据集 mtcars
中,每加仑英里数 mpg
根据汽车中存在的汽缸数 cyl
进行分组。
让我们看一个例子,
boxplot(mpg ~ cyl, data = mtcars,
main = "Mileage Data Boxplot",
ylab = "Miles Per Gallon(mpg)",
xlab = "No. of Cylinders",
col = "orange")
输出

在上面的示例中,我们创建了一个关于 mpg
和 cyl
之间关系的箱线图。请注意代码
boxplot(mpg ~ cyl, data = mtcars,
...
)
这里,
mpg ~ cyl
- 每加仑英里数mpg
根据汽车中存在的汽缸数cyl
进行分组data = mtcars
- 数据取自 mtcars 数据集
从上图可以清楚地看出,气缸数量越少意味着每加仑英里数越多。
在 R 中为箱线图添加刻槽
在 R 中,我们为箱线图添加刻槽以找出不同数据组的中位数如何相互匹配。例如,
boxplot(mpg ~ cyl, data = mtcars,
main ="Mileage Data Boxplot",
ylab ="Miles Per Gallon(mpg)",
xlab ="No. of Cylinders",
col ="orange",
notch = TRUE)
输出

在上面的示例中,我们为箱线图添加了刻槽以找出不同数据组的中位数如何相互匹配。
注意:如果刻槽重叠,我们可以说中位数彼此相等。