如何在R语言已创建的第一个子图中添加线条
在R中完成子图绘制后为指定子图添加线条
当你用par(mfrow=c(2,2))绘制完四个子图后,当前绘图设备的焦点停留在最后一个子图(第2行第2列),直接调用lines()会把线条画在那里。要给第一个子图加线条,只需先切换绘图焦点到第一个子图即可:
完整示例代码
x1 <- rnorm(10) x2 <- rnorm(10) x3 <- rnorm(10) x4 <- rnorm(10) par(mfrow=c(2,2)) plot(x1,t="p",main = "1") plot(x2,t="p",main = "2") plot(x3,t="p",main = "3") plot(x4,t="p",main = "4") # 切换到第一个子图(第1行第1列) par(mfg = c(1, 1)) # 添加线条 lines(rnorm(10), col=2)
关键说明
par(mfg = c(row, col))用来指定当前要操作的子图位置:- 第一个数字是子图所在的行号,第二个是列号
- 因为之前设置了
mfrow=c(2,2),所以行列范围都是1到2
- 切换焦点后,后续的绘图命令(比如
lines()、points()等)都会作用于指定的子图,如果需要切换到其他子图,修改mfg的行列值即可,比如par(mfg=c(2,1))就能切换到左下角的子图。
内容的提问来源于stack exchange,提问作者mr.T
相关产品推荐
相关产品推荐

