управление внутренним полем фигуры в grid.layout - PullRequest
4 голосов
/ 15 января 2012

Я пытаюсь построить несколько решеточных графиков в сетке. Для этого я использую следующий код:

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()), должны работать, но это не так дело здесь. Может быть, я упускаю что-то очевидное, но я не могу понять, почему я не могу контролировать параметры поля. Есть предложения?

1 Ответ

4 голосов
/ 15 января 2012

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