我想在r,24中绘制几个图正好在一页中。此外,我希望绘图具有矩形形式。但是,当我使用:
par(mfrow = c(6,4),pin = c(2,1))
我得到了一块地块,在地块的底部和顶部浪费了大量的白色空间。如果我尝试使用以下方法减少图的外边距:
par(mfrow = c(6,4),pin = c(2,1), oma = c(0,0,0,0))
结果是一样的。
答案 0 :(得分:0)
你可以控制边距,我已经尝试过了:
layout(matrix(c(1:24), nrow = 6, byrow = T));par(mfrow = c(6,4),pin = c(2,1), oma = c(0,0,0,0));
for (i in 1:24) { plot(rnorm(100), main = sprintf("%do gráfico", i)) }
答案 1 :(得分:0)
您不能一次设置“边距选项”和“引脚”,但可以“plt”。第一个par()设置较低的y(或x),较高的x和y。第二个par()从“fin”和纵横比计算下x(或y),然后设置它。
# sets lower y and calculates lower x
par( plt = c( 0, 0.97, 0.22, 0.97) )
par( mfrow=c(6,4), mgp = c(3, 0.5, 0),
plt = c( par("plt")[2] - par("pin")[2] * 2 / 1 / par("fin")[1], par("plt")[2:4]) )
for (i in 1:24) plot(rnorm(100), ann=F)
# sets lower x and calculates lower y
par( plt = c( 0.2, 0.97, 0, 0.97) )
par( mfrow=c(6,4), mgp = c(3, 0.5, 0),
plt = c(par("plt")[1:2], par("plt")[4] - par("pin")[1] * 1 / 2 / par("fin")[2], par("plt")[4]) )
for (i in 1:24) plot(rnorm(100), ann=F)