Boxlot可以为单个变量或变量按组创建。格式是boxplot(x ,data =),其中x是公式,data =表示提供数据的数据帧。公式的一个例子是y〜group,其中为每个组的值生成一个单独的数值变量y的箱形图。添加varwidth = TRUE以使箱线宽度与采样尺寸的平方根成比例。添加水平= TRUE以反转轴的方向。
# Boxplot of MPG by Car Cylinders
boxplot(mpg~cyl,data=mtcars, main="Car Milage Data",
xlab="Number of Cylinders", ylab="Miles Per Gallon")
# Notched Boxplot of Tooth Growth Against 2 Crossed Factors
# boxes colored for ease of interpretation
boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE,
col=(c("gold","darkgreen")),
main="Tooth Growth", xlab="Suppliment and Dose")
在缺口箱状图中,如果两个盒子的凹口不重叠,这就是“有力证据”,它们的中位数不同(Chambers 等人,1983,第62页)。
颜色回收。在上面的例子中,如果我列出了6种颜色,每个盒子都会有自己的颜色。Earl F. Glynn创建了一个易于使用的颜色列表,为PDF格式。
其他选项
sfsmisc包中的boxplot.matrix()函数 为矩阵中的每个列(行)绘制一个箱形图。gplots包中的boxplot.n()函数使用其样本大小来标注每个boxplot。Rlab包中的bplot()函数提供了更多选项,用于控制输出中框的位置和标签。
小提琴剧情
小提琴情节是一个盒式情节和一个核心密度情节的组合。可以使用vioplot包中的vioplot()函数创建它们。
# Violin Plots
library(vioplot)
x1 <- mtcars$mpg[mtcars$cyl==4]x2 <- mtcars$mpg[mtcars$cyl==6]x3 <- mtcars$mpg[mtcars$cyl==8]vioplot(x1, x2, x3, names=c("4 cyl", "6 cyl", "8 cyl"),
col="gold")
title("Violin Plots of Miles Per Gallon")
Bagplot – 2D Boxplot扩展
aplpack软件包中的bagplot(x,y)函数提供单变量箱线图的双变量版本。该包包含所有积分的50%。双变量中位数近似。栅栏将围栏中的点与外部的点分开。显示异常值。
# Example of a Bagplot
library(aplpack)
attach(mtcars)
bagplot(wt,mpg, xlab="Car Weight", ylab="Miles Per Gallon",
main="Bagplot Example")
来练习
在本课程中尝试使用boxplot练习来绘制R中的绘图和数据可视化。