Сохранить вывод из gridExtra :: grid.arrange в объект
Я помещаю несколько графиков в одно изображение, используяgridExtra::grid.arrange
и хотел бы иметь возможность сохранить комбинированный график как объект, который можно было бы вернуть из функции как часть списка возвращаемых объектов. В идеале я хотел бы сделать это без печати объекта сюжета.
Код ниже создает два графика, объединяет их сgrid.arrange
и пытается сохранить результат вx
, Тем не мение,x
оцениваетNULL
и сюжет распечатан. Документация дляgrid.arrange
указывает мне наarrangeGrob
и предлагает построение графиков можно отключить с помощьюplot=FALSE
, но я получаю ошибку, когда пытаюсь это сделать, потому чтоFALSE
не объект граб.
Любые предложения для чего я не понимаю?
# R under development
# Windows 7 (32 bit)
# ggplot2 1.0.0
# gridExtra 0.9.1
p1 <- ggplot(mtcars, aes(x=factor(cyl), y=mpg)) + geom_boxplot()
p2 <- ggplot(mtcars, aes(x=factor(cyl), y=wt)) + geom_boxplot()
x <- gridExtra::grid.arrange(p1, p2)
x
Согласно комментариям, я добавляю это редактирование. Когда я попробую это сarrangeGrob
Я не получаю никакого вывода вообще.
> gridExtra::arrangeGrob(p1, p2)
> print(gridExtra::arrangeGrob(p1, p2))
Error: No layers in plot
> x <- gridExtra::arrangeGrob(p1, p2)
> x
Error: No layers in plot