boxplot
位于 graphics
包(package)。 说明
生成给定(分组)值的 box-and-whisker 图。
用法
boxplot(x, ...)
## S3 method for class 'formula'
boxplot(formula, data = NULL, ..., subset, na.action = NULL,
xlab = mklab(y_var = horizontal),
ylab = mklab(y_var =!horizontal),
add = FALSE, ann = !add, horizontal = FALSE,
drop = FALSE, sep = ".", lex.order = FALSE)
## Default S3 method:
boxplot(x, ..., range = 1.5, width = NULL, varwidth = FALSE,
notch = FALSE, outline = TRUE, names, plot = TRUE,
border = par("fg"), col = "lightgray", log = "",
pars = list(boxwex = 0.8, staplewex = 0.5, outwex = 0.5),
ann = !add, horizontal = FALSE, add = FALSE, at = NULL)
参数
formula |
公式,例如 |
data |
data.frame(或列表),应从中获取 |
subset |
一个可选向量,指定用于绘图的观测值子集。 |
na.action |
一个函数,指示当数据包含 |
xlab, ylab |
x 轴和 y 轴注释,因为R3.6.0 具有非空默认值。可以通过抑制 |
ann |
|
drop, sep, lex.order |
传递到 |
x |
用于指定要生成箱线图的数据。数字向量或包含此类向量的单个列表。其他未命名参数将更多数据指定为单独的向量(每个向量对应于一个分量箱线图)。数据中允许使用 |
... |
对于 对于默认方法,未命名参数是附加数据向量(除非 |
range |
这决定了图须从盒子中延伸出多远。如果 |
width |
给出构成绘图的框的相对宽度的向量。 |
varwidth |
如果 |
notch |
如果 |
outline |
如果 |
names |
将在每个箱线图下打印的组标签。可以是字符向量或 expression (请参阅 plotmath )。 |
boxwex |
应用于所有框的比例因子。当只有几个组时,可以通过使框变窄来改善绘图的外观。 |
staplewex |
订书钉线宽度扩展,与框宽度成正比。 |
outwex |
离群线宽度扩展,与框宽度成正比。 |
plot |
如果 |
border |
箱线图轮廓的可选颜色向量。如果 |
col |
如果 |
log |
指示 x 或 y 或两个坐标是否应以对数刻度绘制的字符。 |
pars |
(可能有很多)更多图形参数的列表,例如 |
horizontal |
逻辑表明箱线图是否应该是水平的;默认 |
add |
逻辑,如果 true 将箱线图添加到当前绘图。 |
at |
给出应绘制箱线图的位置的数值向量,特别是当 |
细节
通用函数 boxplot
目前有一个默认方法 ( boxplot.default
) 和一个公式接口 ( boxplot.formula
)。
如果多个组作为多个参数或通过公式提供,则将按照参数的顺序或因子水平的顺序绘制平行箱线图(请参阅 factor
)。
形成箱线图时将忽略缺失值。
值
包含以下组件的列表:
stats |
一个矩阵,每列包含一组/图的下须线的极值、下铰链、中值、上铰链和上须线的极值。如果所有输入都具有相同的类属性,则该组件也将具有相同的类属性。 |
n |
一个向量,其中包含每组中的(非 |
conf |
一个矩阵,其中每列包含凹口的下限和上限。 |
out |
超出晶须极限的任何数据点的值。 |
group |
与 |
names |
组名称的向量。 |
例子
## boxplot on a formula:
boxplot(count ~ spray, data = InsectSprays, col = "lightgray")
# *add* notches (somewhat funny here <--> warning "notches .. outside hinges"):
boxplot(count ~ spray, data = InsectSprays,
notch = TRUE, add = TRUE, col = "blue")
boxplot(decrease ~ treatment, data = OrchardSprays, col = "bisque",
log = "y")
## horizontal=TRUE, switching y <--> x :
boxplot(decrease ~ treatment, data = OrchardSprays, col = "bisque",
log = "x", horizontal=TRUE)
rb <- boxplot(decrease ~ treatment, data = OrchardSprays, col = "bisque")
title("Comparing boxplot()s and non-robust mean +/- SD")
mn.t <- tapply(OrchardSprays$decrease, OrchardSprays$treatment, mean)
sd.t <- tapply(OrchardSprays$decrease, OrchardSprays$treatment, sd)
xi <- 0.3 + seq(rb$n)
points(xi, mn.t, col = "orange", pch = 18)
arrows(xi, mn.t - sd.t, xi, mn.t + sd.t,
code = 3, col = "pink", angle = 75, length = .1)
## boxplot on a matrix:
mat <- cbind(Uni05 = (1:100)/21, Norm = rnorm(100),
`5T` = rt(100, df = 5), Gam2 = rgamma(100, shape = 2))
boxplot(mat) # directly, calling boxplot.matrix()
## boxplot on a data frame:
df. <- as.data.frame(mat)
par(las = 1) # all axis labels horizontal
boxplot(df., main = "boxplot(*, horizontal = TRUE)", horizontal = TRUE)
## Using 'at = ' and adding boxplots -- example idea by Roger Bivand :
boxplot(len ~ dose, data = ToothGrowth,
boxwex = 0.25, at = 1:3 - 0.2,
subset = supp == "VC", col = "yellow",
main = "Guinea Pigs' Tooth Growth",
xlab = "Vitamin C dose mg",
ylab = "tooth length",
xlim = c(0.5, 3.5), ylim = c(0, 35), yaxs = "i")
boxplot(len ~ dose, data = ToothGrowth, add = TRUE,
boxwex = 0.25, at = 1:3 + 0.2,
subset = supp == "OJ", col = "orange")
legend(2, 9, c("Ascorbic acid", "Orange juice"),
fill = c("yellow", "orange"))
## With less effort (slightly different) using factor *interaction*:
boxplot(len ~ dose:supp, data = ToothGrowth,
boxwex = 0.5, col = c("orange", "yellow"),
main = "Guinea Pigs' Tooth Growth",
xlab = "Vitamin C dose mg", ylab = "tooth length",
sep = ":", lex.order = TRUE, ylim = c(0, 35), yaxs = "i")
## more examples in help(bxp)
参考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988). The New S Language. Wadsworth & Brooks/Cole.
Chambers, J. M., Cleveland, W. S., Kleiner, B. and Tukey, P. A. (1983). Graphical Methods for Data Analysis. Wadsworth & Brooks/Cole.
Murrell, P. (2005). R Graphics. Chapman & Hall/CRC Press.
See also boxplot.stats
.
也可以看看
boxplot.stats
用于计算,bxp
用于绘图和更多示例;和 stripchart
作为替代方案(使用小数据集)。
相关用法
- R boxplot.matrix 为矩阵的每列(行)绘制箱线图
- R box 在地块周围画一个方框
- R barplot 条形图
- R bxp 从摘要中绘制箱线图
- R legend 将图例添加到绘图中
- R plot.histogram 绘制直方图
- R points 向绘图添加点
- R stem 茎叶图
- R mtext 将文本写入绘图的边距
- R arrows 将箭头添加到绘图中
- R contour 显示轮廓
- R pairs 散点图矩阵
- R stars 星图(蜘蛛图/雷达图)和线段图
- R coplot 调节图
- R smoothScatter 具有平滑密度颜色表示的散点图
- R mosaicplot 马赛克图
- R plot.raster 绘制光栅图像
- R axTicks 计算轴刻度线位置
- R curve 绘制函数图
- R plot.factor 绘制因子变量
- R sunflowerplot 制作向日葵散点图
- R plot.table 表对象的绘图方法
- R units 图形单位
- R identify 识别散点图中的点
- R layout 指定复杂的绘图安排
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Box Plots。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。