matplot
位于 graphics
包(package)。 说明
将一个矩阵的列与另一个矩阵的列(通常只是被视为 1 列矩阵的向量)进行比较。
用法
matplot(x, y, type = "p", lty = 1:5, lwd = 1, lend = par("lend"),
pch = NULL,
col = 1:6, cex = NULL, bg = NA,
xlab = NULL, ylab = NULL, xlim = NULL, ylim = NULL,
log = "", ..., add = FALSE, verbose = getOption("verbose"))
matpoints(x, y, type = "p", lty = 1:5, lwd = 1, pch = NULL,
col = 1:6, ...)
matlines (x, y, type = "l", lty = 1:5, lwd = 1, pch = NULL,
col = 1:6, ...)
参数
x , y |
用于绘图的数据向量或矩阵。行数应该匹配。如果其中之一缺失,则另一个被视为 |
type |
字符串(长度为 1 的向量)或 1 字符字符串的向量,指示 |
lty , lwd , lend |
线型、宽度和末端样式的向量。第一个元素用于第一列,第二个元素用于第二列,依此类推,即使没有为所有列绘制线条。线型将循环使用,直到绘制完所有图。 |
pch |
用于绘制字符的字符串或 1 个字符或整数的向量,有关详细信息,请参阅 |
col |
颜色向量。颜色是循环使用的。 |
cex |
字符扩展大小的向量,循环使用。这是 |
bg |
由 |
xlab , ylab |
x 轴和 y 轴的标题,如 |
xlim , ylim |
x 轴和 y 轴的范围,如 |
log , ... |
图形参数(参见 |
add |
|
verbose |
合乎逻辑的。如果是 |
细节
matplot(x,y, ..)
本质上是一个包装器
注意保留x
和y
的class(.)
,以便调用相应的plot()
和lines()
方法。
不绘制涉及缺失值的点。
x
的第一列相对于 y
的第一列绘制,x
的第二列相对于 y
的第二列绘制,依此类推。如果一个矩阵的列数较少,则绘图将循环返回各列再次。 (特别是,x
或 y
可以是一个向量,将根据该向量绘制另一个参数的所有列。)
col, cex, lty, lwd
的第一个元素用于绘制轴以及第一条线。
由于绘图符号是用线条绘制的,并且这些函数可能会更改线条样式,因此在使用绘图符号时您可能应该指定lty = 1
。
副作用
函数 matplot
生成一个新图; matpoints
和 matlines
添加到当前的值。
例子
require(grDevices)
matplot((-4:5)^2, main = "Quadratic") # almost identical to plot(*)
sines <- outer(1:20, 1:4, function(x, y) sin(x / 20 * pi * y))
matplot(sines, pch = 1:4, type = "o", col = rainbow(ncol(sines)))
matplot(sines, type = "b", pch = 21:23, col = 2:5, bg = 2:5,
main = "matplot(...., pch = 21:23, bg = 2:5)")
x <- 0:50/50
matplot(x, outer(x, 1:8, function(x, k) sin(k*pi * x)),
ylim = c(-2,2), type = "plobcsSh",
main= "matplot(,type = \"plobcsSh\" )")
## pch & type = vector of 1-chars :
matplot(x, outer(x, 1:4, function(x, k) sin(k*pi * x)),
pch = letters[1:4], type = c("b","p","o"))
lends <- c("round","butt","square")
matplot(matrix(1:12, 4), type="c", lty=1, lwd=10, lend=lends)
text(cbind(2.5, 2*c(1,3,5)-.4), lends, col= 1:3, cex = 1.5)
table(iris$Species) # is data.frame with 'Species' factor
iS <- iris$Species == "setosa"
iV <- iris$Species == "versicolor"
op <- par(bg = "bisque")
matplot(c(1, 8), c(0, 4.5), type = "n", xlab = "Length", ylab = "Width",
main = "Petal and Sepal Dimensions in Iris Blossoms")
matpoints(iris[iS,c(1,3)], iris[iS,c(2,4)], pch = "sS", col = c(2,4))
matpoints(iris[iV,c(1,3)], iris[iV,c(2,4)], pch = "vV", col = c(2,4))
legend(1, 4, c(" Setosa Petals", " Setosa Sepals",
"Versicolor Petals", "Versicolor Sepals"),
pch = "sSvV", col = rep(c(2,4), 2))
nam.var <- colnames(iris)[-5]
nam.spec <- as.character(iris[1+50*0:2, "Species"])
iris.S <- array(NA, dim = c(50,4,3),
dimnames = list(NULL, nam.var, nam.spec))
for(i in 1:3) iris.S[,,i] <- data.matrix(iris[1:50+50*(i-1), -5])
matplot(iris.S[, "Petal.Length",], iris.S[, "Petal.Width",], pch = "SCV",
col = rainbow(3, start = 0.8, end = 0.1),
sub = paste(c("S", "C", "V"), dimnames(iris.S)[[3]],
sep = "=", collapse= ", "),
main = "Fisher's Iris Data")
par(op)
## 'x' a "Date" vector :
nd <- length(dv <- seq(as.Date("1959-02-21"), by = "weeks", length.out = 100))
mSC <- cbind(I=1, sin=sin(pi*(1:nd)/8), cos=cos(pi*(1:nd)/8))
matplot(dv, mSC, type = "b", main = "matplot(<Date>, y)")
## 'x' a "POSIXct" date-time vector :
ct <- seq(c(ISOdate(2000,3,20)), by = "15 mins", length.out = 100)
matplot(ct, mSC, type = "b", main = "matplot(<POSIXct>, y)")
## or the same with even more axis flexibility:
matplot(ct, mSC, type = "b", main = "matplot(<POSIXct>, y)", xaxt="n")
Axis(ct, side=1, at = ct[1+4*(0:24)])
## Also works for data frame columns:
matplot(iris[1:50,1:4])
参考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
也可以看看
相关用法
- R mtext 将文本写入绘图的边距
- R mosaicplot 马赛克图
- R legend 将图例添加到绘图中
- R barplot 条形图
- R plot.histogram 绘制直方图
- R points 向绘图添加点
- R stem 茎叶图
- R arrows 将箭头添加到绘图中
- R contour 显示轮廓
- R pairs 散点图矩阵
- R stars 星图(蜘蛛图/雷达图)和线段图
- R box 在地块周围画一个方框
- R coplot 调节图
- R smoothScatter 具有平滑密度颜色表示的散点图
- R bxp 从摘要中绘制箱线图
- R plot.raster 绘制光栅图像
- R axTicks 计算轴刻度线位置
- R curve 绘制函数图
- R plot.factor 绘制因子变量
- R sunflowerplot 制作向日葵散点图
- R plot.table 表对象的绘图方法
- R units 图形单位
- R identify 识别散点图中的点
- R layout 指定复杂的绘图安排
- R polygon 多边形绘制
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Plot Columns of Matrices。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。