使用 boxplot() 图形创建一个盒须图

此示例使用默认的 boxplot() 函数和 irisdata 框架。

> head(iris)
  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.9         3.0          1.4         0.2  setosa
3          4.7         3.2          1.3         0.2  setosa
4          4.6         3.1          1.5         0.2  setosa
5          5.0         3.6          1.4         0.2  setosa
6          5.4         3.9          1.7         0.4  setosa

简单的 boxplot(Sepal.Length)

创建数值变量的盒须图

boxplot(iris[,1],xlab="Sepal.Length",ylab="Length(in centemeters)",
           main="Summary Charateristics of Sepal.Length(Iris Data)")

https://i.stack.imgur.com/k6A7h.jpg

根据物种分类的萼片长度的 Boxplot

创建按分类变量分组的数值变量的箱线图

boxplot(Sepal.Length~Species,data = iris)

StackOverflow 文档

带来订单

要更改图中框的顺序,你必须更改分类变量的级别顺序。
例如,如果我们想要订购 virginica - versicolor - setosa

newSpeciesOrder <- factor(iris$Species, levels=c("virginica","versicolor","setosa"))
boxplot(Sepal.Length~newSpeciesOrder,data = iris)

StackOverflow 文档

更改组名称

如果要为组指定更好的名称,可以使用 Names 参数。它采用分类变量级别大小的向量

boxplot(Sepal.Length~newSpeciesOrder,data = iris,names= c("name1","name2","name3"))

StackOverflow 文档

小改进

颜色

col:添加分类变量级别大小的向量

boxplot(Sepal.Length~Species,data = iris,col=c("green","yellow","orange"))

StackOverflow 文档

靠近盒子

boxwex:设置框之间的边距。
离开 boxplot(Sepal.Length~Species,data = iris,boxwex = 0.1)
Right boxplot(Sepal.Length~Species,data = iris,boxwex = 1)

StackOverflow 文档

参见箱图基于 plot=FALSE 的摘要

要查看摘要,你必须将参数 plot 放到 FALSE
给出了各种结果

> boxplot(Sepal.Length~newSpeciesOrder,data = iris,plot=FALSE)
$stats #summary of the numerical variable for the 3 groups
     [,1] [,2] [,3]
[1,]  5.6  4.9  4.3 # extreme value 
[2,]  6.2  5.6  4.8 # first quartile limit
[3,]  6.5  5.9  5.0 # median limit
[4,]  6.9  6.3  5.2 # third quartile limit
[5,]  7.9  7.0  5.8 # extreme value

$n #number of observations in each groups
[1] 50 50 50

$conf #extreme value of the notchs
         [,1]     [,2]     [,3]
[1,] 6.343588 5.743588 4.910622
[2,] 6.656412 6.056412 5.089378

$out #extreme value
[1] 4.9

$group #group in which are the extreme value
[1] 1

$names #groups names
[1] "virginica"  "versicolor" "setosa"