2016-01-04 3 views
5

Я перехожу от ggplot2 1.0.1 и gridExtra 0.9.1 к новейшим версиям этих пакетов и борюсь с некоторыми незначительными проблемами на данный момент.Основное название в grid.arrange or organizGrob имеет серый фон

Одна из проблем - это заголовок в комбинированном сюжете.

library(ggplot2) 
library(gridExtra) 
df <- data.frame(x=runif(100), y=runif(100)) 
p1 <- ggplot(df, aes(x,y)) + geom_point() 
p2 <- ggplot(df, aes(x,y)) + geom_point() 
a <- arrangeGrob(p1,p1,p2, layout_matrix=rbind(c(1,2),c(1,3)), top='my title') 
plot(a) 
ggsave('a.pdf', a) 

в старой версии, параметр был назван main и я должен был использовать print, чтобы построить свои графики a. Теперь, когда я сохраняю график, все в порядке. Но график plot(a) имеет светло-серый фон сетки за my title. В сохраненном pdf-файле фон снова белый.

Я также пытался использовать grid.arrange, но я не хочу печатать сюжет непосредственно при выполнении. Вот почему я использую двухэтапный подход, сохраняя график в переменной, а затем plot.

Итак, как мне получить белый фон, когда plot(a)?

ответ

4

Использование grid.draw. Метод plot предназначен только для тестирования.

library(grid) 
grid.newpage() 
grid.draw(a) 

resulting plot

+0

Хач, то не очень интуитивным ... Но хорошо, это работает как это. Рекомендуется использовать «grid.newpage»? Или когда мне это нужно? Мне понравилась «старая» возможность, используя «print», к сожалению, это уже невозможно. – drmariod

+0

Я согласен, что 'plot' более интуитивно понятен. Я получил образование по поводу использования 'grid.draw' by baptiste, когда по ошибке рекомендовал« plot »в качестве замены« print »после обновления. Вам нужна «grid.newpage», если вы хотите новую страницу. В противном случае это может быть напечатано поверх существующего участка сетки. – Roland

+2

btw Я не беру на себя ответственность за эти варианты: «grid.draw» является стандартным соглашением по сетке, а сюжет и печать когда-то были унаследованы от решетки/ggplot2, но разработчики gtable решили изменить. – baptiste

Смежные вопросы