facet_grid ggplot2? 中显示了变更单保证金?

Change order margin is presented in facet_grid ggplot2?

我看过几个关于如何通过重新排序因子水平来更改构面顺序的答案。但我想更改显示边距的顺序。所以基本上在 468 之前的左侧面板上显示 (all)。提前致谢!

library(ggplot2)
qplot(mpg, wt, data=mtcars) + facet_grid(. ~ cyl, margins=TRUE)

怎么样

mtcars2 <- rbind(mtcars, within(mtcars, cyl <- "(All)"))

qplot(mpg, wt, data = mtcars2) + facet_grid(. ~ cyl)

我有一个非常复杂的解决方案,你总是可以编辑你的 grobs 结构:

library(ggplot2)

gg = qplot(mpg, wt, data=mtcars) + facet_grid(. ~ cyl, margins=TRUE)

ggg = ggplotGrob(gg)

ggg$grobs = ggg$grobs[c(1,5,2:4,9,6:8,10:15,19,16:18,20:27)]

grid::grid.newpage()

grid::grid.draw(ggg)