barplot
位于 graphics
包(package)。 说明
创建带有垂直或水平条形的条形图。
用法
barplot(height, ...)
## Default S3 method:
barplot(height, width = 1, space = NULL,
names.arg = NULL, legend.text = NULL, beside = FALSE,
horiz = FALSE, density = NULL, angle = 45,
col = NULL, border = par("fg"),
main = NULL, sub = NULL, xlab = NULL, ylab = NULL,
xlim = NULL, ylim = NULL, xpd = TRUE, log = "",
axes = TRUE, axisnames = TRUE,
cex.axis = par("cex.axis"), cex.names = par("cex.axis"),
inside = TRUE, plot = TRUE, axis.lty = 0, offset = 0,
add = FALSE, ann = !add && par("ann"), args.legend = NULL,
order = c("none", "incr", "decr"),
...)
## S3 method for class 'formula'
barplot(formula, data, subset, na.action,
horiz = FALSE, xlab = NULL, ylab = NULL, ...)
参数
height |
说明构成绘图的条形的向量或值矩阵。如果 |
width |
条形宽度的可选向量。重新循环到绘制的条数的长度。除非指定 |
space |
每个条形之前留下的空间量(作为平均条形宽度的一部分)。可以以单个数字或每条一个数字的形式给出。如果 |
names.arg |
要绘制在每个条形或一组条形下方的名称向量。如果省略此参数,则名称取自 |
legend.text |
用于构建图例的文本向量,或指示是否应包含图例的逻辑。仅当 |
beside |
一个逻辑值。如果 |
horiz |
一个逻辑值。如果是 |
density |
给出条形或条形组件的阴影线密度(以每英寸行数为单位)的向量。 |
angle |
条形或条形组件的阴影线的斜率,以度数形式给出(逆时针)。 |
col |
条形或条形组件的颜色向量。默认情况下,如果 |
border |
用于条形边框的颜色。使用 |
main,sub |
情节的主标题和副标题。 |
xlab |
x 轴的标签。 |
ylab |
y 轴的标签。 |
xlim |
x 轴的限制。 |
ylim |
y 轴的限制。 |
xpd |
合乎逻辑的。是否应该允许酒吧走出地区? |
log |
指定轴刻度是否应为对数的字符串;请参阅 |
axes |
合乎逻辑的。如果 |
axisnames |
合乎逻辑的。如果 |
cex.axis |
数字轴标签的扩展因子(请参阅 |
cex.names |
轴名称(条形标签)的扩展因子。 |
inside |
合乎逻辑的。如果是 |
plot |
合乎逻辑的。如果 |
axis.lty |
图形参数 |
offset |
一个向量,指示条形相对于 x 轴应移动多少。 |
add |
逻辑指定是否应将条形图添加到已存在的图中;默认为 |
ann |
逻辑指定默认注释( |
args.legend |
要传递给 |
formula |
一个公式,其中 y ~ x y ~ x1 + x2 cbind(y1, y2) ~ x (参见示例)。 |
data |
应从中获取公式中变量的 DataFrame (或列表)。 |
subset |
一个可选向量,指定要使用的观测子集。 |
na.action |
一个函数,指示当数据包含 |
... |
要传递给其他方法或从其他方法传递的参数。对于默认方法,这些可以包括传递给 |
值
一个数字向量(或矩阵,当 beside = TRUE
时),例如 mp
,给出绘制的所有条形中点的坐标,对于添加到图形中很有用。
如果 beside
为 true,则使用 colMeans(mp)
作为每组柱的中点,请参阅示例。
例子
# Formula method
barplot(GNP ~ Year, data = longley)
barplot(cbind(Employed, Unemployed) ~ Year, data = longley)
## 3rd form of formula - 2 categories :
op <- par(mfrow = 2:1, mgp = c(3,1,0)/2, mar = .1+c(3,3:1))
summary(d.Titanic <- as.data.frame(Titanic))
barplot(Freq ~ Class + Survived, data = d.Titanic,
subset = Age == "Adult" & Sex == "Male",
main = "barplot(Freq ~ Class + Survived, *)", ylab = "# {passengers}", legend.text = TRUE)
# Corresponding table :
(xt <- xtabs(Freq ~ Survived + Class + Sex, d.Titanic, subset = Age=="Adult"))
# Alternatively, a mosaic plot :
mosaicplot(xt[,,"Male"], main = "mosaicplot(Freq ~ Class + Survived, *)", color=TRUE)
par(op)
# Default method
require(grDevices) # for colours
tN <- table(Ni <- stats::rpois(100, lambda = 5))
r <- barplot(tN, col = rainbow(20))
#- type = "h" plotting *is* 'bar'plot
lines(r, tN, type = "h", col = "red", lwd = 2)
barplot(tN, space = 1.5, axisnames = FALSE,
sub = "barplot(..., space= 1.5, axisnames = FALSE)")
barplot(VADeaths, plot = FALSE)
barplot(VADeaths, plot = FALSE, beside = TRUE)
mp <- barplot(VADeaths) # default
tot <- colMeans(VADeaths)
text(mp, tot + 3, format(tot), xpd = TRUE, col = "blue")
barplot(VADeaths, beside = TRUE,
col = c("lightblue", "mistyrose", "lightcyan",
"lavender", "cornsilk"),
legend.text = rownames(VADeaths), ylim = c(0, 100))
title(main = "Death Rates in Virginia", font.main = 4)
hh <- t(VADeaths)[, 5:1]
mybarcol <- "gray20"
mp <- barplot(hh, beside = TRUE,
col = c("lightblue", "mistyrose",
"lightcyan", "lavender"),
legend.text = colnames(VADeaths), ylim = c(0,100),
main = "Death Rates in Virginia", font.main = 4,
sub = "Faked upper 2*sigma error bars", col.sub = mybarcol,
cex.names = 1.5)
segments(mp, hh, mp, hh + 2*sqrt(1000*hh/100), col = mybarcol, lwd = 1.5)
stopifnot(dim(mp) == dim(hh)) # corresponding matrices
mtext(side = 1, at = colMeans(mp), line = -2,
text = paste("Mean", formatC(colMeans(hh))), col = "red")
# Bar shading example
barplot(VADeaths, angle = 15+10*1:5, density = 20, col = "black",
legend.text = rownames(VADeaths))
title(main = list("Death Rates in Virginia", font = 4))
# Border color
barplot(VADeaths, border = "dark blue")
# Log scales (not much sense here)
barplot(tN, col = heat.colors(12), log = "y")
barplot(tN, col = gray.colors(20), log = "xy")
# Legend location
barplot(height = cbind(x = c(465, 91) / 465 * 100,
y = c(840, 200) / 840 * 100,
z = c(37, 17) / 37 * 100),
beside = FALSE,
width = c(465, 840, 37),
col = c(1, 2),
legend.text = c("A", "B"),
args.legend = list(x = "topleft"))
作者
R Core, with a contribution by Arni Magnusson.
参考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
Murrell, P. (2005) R Graphics. Chapman & Hall/CRC Press.
也可以看看
plot(..., type = "h")
,dotchart
; hist
用于连续变量的柱。 mosaicplot()
,更复杂地可视化多个分类变量。
相关用法
- R box 在地块周围画一个方框
- R bxp 从摘要中绘制箱线图
- R boxplot.matrix 为矩阵的每列(行)绘制箱线图
- R boxplot 箱线图
- 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大神的英文原创作品 Bar Plots。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。