Упорядочить общую ширину графика с помощью фасетного ggplot 2.0.0 & gridExtra

Поскольку я обновился до ggplot2 2.0.0, я не могу упорядочивать диаграммы с использованием gridExtra. Проблема заключается в том, что граненые диаграммы будут сжаты, а другие расширятся. Ширина в основном перепутана. Я хочу расположить их так же, как эти односторонние графики: выровнять по левому краю два ребра графа (ggplot)

Я поставил воспроизводимый код

library(grid) # for unit.pmax()
library(gridExtra)

plot.iris <- ggplot(iris, aes(Sepal.Length, Sepal.Width)) + 
  geom_point() + 
  facet_grid(. ~ Species) + 
  stat_smooth(method = "lm")

plot.mpg <- ggplot(mpg, aes(x = cty, y = hwy, colour = factor(cyl))) + 
  geom_point(size=2.5)

g.iris <- ggplotGrob(plot.iris) # convert to gtable
g.mpg <- ggplotGrob(plot.mpg) # convert to gtable

iris.widths <- g.iris$widths # extract the first three widths, 
mpg.widths <- g.mpg$widths # same for mpg plot
max.widths <- unit.pmax(iris.widths, mpg.widths)

g.iris$widths <- max.widths # assign max. widths to iris gtable
g.mpg$widths <- max.widths # assign max widths to mpg gtable

grid.arrange(g.iris,g.mpg,ncol=1)

 введите описание изображения здесь

Как вы увидите, на верхней диаграмме первый фасет раскрывается, а остальные 2 сжимаются справа. Нижняя диаграмма не охватывает всю ширину.

Может ли быть так, что новая версия ggplot2 портит ширину gtable?

Кто-нибудь знает обходной путь?

Большое спасибо

РЕДАКТИРОВАТЬ: добавлено изображение диаграммы

Я ищу что-то вроде:

 введите описание изображения здесь

7 голосов | спросил Jordi Vidal 14 Jpm1000000pmThu, 14 Jan 2016 21:50:53 +030016 2016, 21:50:53

0 ответов


Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132