4
我想在单个绘图窗口中创建多个绘图,其中每个绘图的面板宽度与每个绘图的xlim成比例。在R中获得不同绘图宽度的多个绘图
目前我使用:
layout(matrix(c(1:8,10,9), 5, 2, byrow = FALSE), widths=2)
layout.show(10)
基本上,我想width
被单独应用到每个情节,而不是在一列中的所有情节。这样做的最好方法是什么?
我想在单个绘图窗口中创建多个绘图,其中每个绘图的面板宽度与每个绘图的xlim成比例。在R中获得不同绘图宽度的多个绘图
目前我使用:
layout(matrix(c(1:8,10,9), 5, 2, byrow = FALSE), widths=2)
layout.show(10)
基本上,我想width
被单独应用到每个情节,而不是在一列中的所有情节。这样做的最好方法是什么?
layout
只适用于如果图可以排列在规则网格上,但它们不必具有相同宽度。
layout(
matrix(
c(1,1,2,3,3,2,4,5,5,6,6,6),
nc=3, byrow = TRUE
)
)
layout.show(6)
如果你想要的东西真的不规则,你可以使用par(fig=...,new=TRUE)
。
plot.new()
par(mar=c(2,2,1,1))
k <- 4
f <- function()
plot(rnorm(20),rnorm(20), xlab="", ylab="", main="", las=1)
for(i in 1:k) {
par(fig=c(0,i/(k+1), (i-1)/k, i/k), new=TRUE)
f()
par(fig=c(i/(k+1),1, (i-1)/k, i/k), new=TRUE)
f()
}
你能否修正你的例子,以便矩阵传递给'布局'实际上是有效的输入?如果最大的整数是10,它也必须包含1-9。 – joran
对不起,更正了 – user1202664