箱线图是衡量数据集中数据的分布程度的指标。它将数据集分为三个四分位数。此图表表示数据集中的最小值、最大值、中位数、第一个四分位数和第三个四分位数。通过为每个数据集绘制箱线图来比较数据集之间的数据分布,它也很有用。
箱线图是使用 boxplot() 函数在 R 中创建的。
语法
在 R 中创建箱线图的基本语法是 −
boxplot(x, data, notch, varwidth, names, main)
以下是所用参数的描述 -
- x 是向量或公式。
- data 是数据框。
- notch 是一个逻辑值。设置为 TRUE 以绘制缺口。
- varwidth 是一个逻辑值。设置为 true 可按比例绘制框的宽度,与样本大小成比例。
- names 是将打印在每个 boxplot 下的组标签。
- main 用于为图形提供标题。
例子
我们使用 R 环境中可用的数据集 “mtcars” 来创建基本的箱线图。让我们看看 mtcars 中的列 “mpg” 和 “cyl”。
input <- mtcars[,c('mpg','cyl')]
print(head(input))
当我们执行上述代码时,它会产生以下结果 -
mpg cyl
Mazda RX4 21.0 6
Mazda RX4 Wag 21.0 6
Datsun 710 22.8 4
Hornet 4 Drive 21.4 6
Hornet Sportabout 18.7 8
Valiant 18.1 6
Mazda RX4 21.0 6
Mazda RX4 Wag 21.0 6
Datsun 710 22.8 4
Hornet 4 Drive 21.4 6
Hornet Sportabout 18.7 8
Valiant 18.1 6
创建箱线图
下面的脚本将为 mpg(每加仑英里数)和 cyl(气瓶数)之间的关系创建一个箱线图。
# 为图表文件命名。
png(file = "boxplot.png")
# 绘制图表。
boxplot(mpg ~ cyl, data = mtcars, xlab = "Number of Cylinders",
ylab = "Miles Per Gallon", main = "Mileage Data")
# 保存文件。
dev.off()
当我们执行上述代码时,它会产生以下结果——
带缺口的箱线图
我们可以绘制带有 Notch 的箱线图,以了解不同数据组的中位数如何相互匹配。
下面的脚本将为每个数据组创建一个带有缺口的箱线图。
# 为图表文件命名。
png(file = "boxplot_with_notch.png")
# 绘制图表。
boxplot(mpg ~ cyl, data = mtcars,
xlab = "Number of Cylinders",
ylab = "Miles Per Gallon",
main = "Mileage Data",
notch = TRUE,
varwidth = TRUE,
col = c("green","yellow","purple"),
names = c("High","Medium","Low")
)
# 保存文件。
dev.off()
当我们执行上述代码时,它会产生以下结果——