4

複数の格子プロットをグリッドにプロットしようとしています。そのために、次のコードを使用しています。

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()

2 つの図の間のスペースを減らしたいと思います。gridBaseのビネットを読んで、そのような単純なグラフィック コントロール(mar=c())が動作するはずですが、ここではそうではありません。明らかな何かが欠けているのかもしれませんが、マージンパラメーターを制御できない理由がわかりません。助言がありますか?

4

1 に答える 1

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)
于 2012-01-15T19:08:19.533 に答える