我想将2个饼图和3个盒子图组合成一个图。我想在顶部有2个饼图,在底部有3个框图。当我使用par(mfrow=c(2,3))
时,我在第一行得到2个饼图和一个箱图。
答案 0 :(得分:2)
您可以使用布局
喜欢
layout(matrix(c(1,1,1,2,2,2,3,3,4,4,5,5), nrow = 2, ncol = 6, byrow = TRUE))
plot(1,main=1,ylab="A")
plot(2,main=2,ylab="B")
plot(3,main=3,ylab="C")
plot(4,main=4,ylab="D")
plot(5,main=5,ylab="E")
在这里你需要创建不同大小的图,你需要在最小的部分划分你的布局矩阵(这里是图的1/6)
你需要这样的矩阵(不同的数字 - 不同的地块)
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 1 1 1 2 2 2
[2,] 3 3 4 4 5 5
或matrix(c(1,1,1,2,2,2,3,3,4,4,5,5), nrow = 2, ncol = 6, byrow = TRUE)
答案 1 :(得分:0)
您可以使用R中的grid概念将多个图形绘制成一行或行和列,请查看以下内容以供参考:
plot(1:3)
grid(NA, 5, lwd = 2) # grid only in y-direction
## maybe change the desired number of tick marks: par(lab = c(mx, my, 7))
op <- par(mfcol = 1:2)
with(iris,
{
plot(Sepal.Length, Sepal.Width, col = as.integer(Species),
xlim = c(4, 8), ylim = c(2, 4.5), panel.first = grid(),
main = "with(iris, plot(...., panel.first = grid(), ..) )")
plot(Sepal.Length, Sepal.Width, col = as.integer(Species),
panel.first = grid(3, lty = 1, lwd = 2),
main = "... panel.first = grid(3, lty = 1, lwd = 2), ..")
}
)
par(op)