Leo*_*o96 7 r graph facet ggplot2 facet-wrap
我正在尝试使用facet_wrap 创建一些多重图。但是我不确定这是否是适合我的图表的正确方法。这是一个简短的可重现示例:
ggplot(airquality, aes(x = Day, y = Temp)) +
facet_wrap(~Month) +
geom_line()
Run Code Online (Sandbox Code Playgroud)
这会在这里产生这个图:
是否可以使用facet_wrap方法将第二行中的两个图“居中”?
请注意,我不想重新排序图,我只想将第二行居中
set_panel_size您还可以考虑包中的功能egg,该功能可让您将多个绘图的面板尺寸(宽度、高度)设置为绝对测量值,请参阅此小插图了解更多详细信息。
使用 Axeman 的代码创建绘图
library(egg)
library(gridExtra)
p <- ggplot(mapping = aes(x = Day, y = Temp)) +
facet_wrap(~Month) +
geom_line()
p1 <- p %+% subset(airquality, Month < 8) + labs(x = NULL)
p2 <- p %+% subset(airquality, Month > 7)
Run Code Online (Sandbox Code Playgroud)
grid.arrange现在在指定面板尺寸后使用排列图
grid.arrange(grobs = lapply(
list(p1, p2),
set_panel_size,
width = unit(5, "cm"),
height = unit(4, "cm")
))
Run Code Online (Sandbox Code Playgroud)
@Tjebo 的使用建议cowplot将会起作用:
p <- ggplot(mapping = aes(x = Day, y = Temp)) +
facet_wrap(~Month) +
geom_line()
cowplot::plot_grid(
p %+% subset(airquality, Month < 8),
p %+% subset(airquality, Month > 7),
nrow = 2
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2364 次 |
| 最近记录: |