我正在尝试在网格中绘制多个点阵图。 为此,我使用以下代码:
plot <- xyplot(1:10~1:10)
page.layout <- grid.layout(nrow = 2, ncol = 1,
widths = unit(c(1), "null"),
heights = unit(c(1), "null"),
default.units = "null",
respect = FALSE,
just = "centre")
pushViewport(viewport(layout = page.layout))
pushViewport(viewport(layout.pos.row = 1))
par(mar = c(5, 4, 4, 2))
print(plot, newpage = FALSE)
popViewport()
pushViewport(viewport(layout.pos.row = 2))
par(mar = c(5, 4, 4, 2))
print(plot, newpage = FALSE)
popViewport()
我现在想减少两个数字之间的空间,我在 gridBase 的插图中读到,简单的图形控件,例如par (mar=c())
应该可以工作,但是事实并非如此。
也许我错过了一些明显的东西,但我无法弄清楚,为什么我无法控制边际参数。
有什么建议吗?
答案 0 :(得分:4)
lattice
提供了一些控制绘图边距的选项,
p <- xyplot(1:10~1:10,
par.settings=list(layout.heights=list(top.padding=-3, bottom.padding=-1)))
library(gridExtra)
grid.arrange(p, p, nrow=2)