更改ggplot2中的垂直和水平边距

Changing vertical and horizontal margin in ggplot2

我正在使用 ggplot2 制作一个方面图。我想更改边距。我发现 panel.margin 参数 theme() 可用于更改边距大小。

library(grid)
p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p + facet_grid(vs ~ am)
p <- p + facet_grid(vs ~ am)
p <- p + theme(panel.margin = unit(3, "lines"))
p

我想单独更改 x(水平)或 y(垂直)方向的边距大小。有解决方案吗?

感谢您的帮助

您要查找的参数已重命名为panel.spacing:

p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p + facet_grid(vs ~ am)
p <- p + facet_grid(vs ~ am)
p <- p + theme(panel.spacing.x = unit(1, "lines"),
               panel.spacing.y = unit(3, "lines"))
p