R 如何在自定义栅格(如GeoFace)上保存镶嵌面打印,而不打印空镶嵌面

R 如何在自定义栅格(如GeoFace)上保存镶嵌面打印,而不打印空镶嵌面,r,ggplot2,R,Ggplot2,下面是来自的示例 RStudio绘图查看器中的输出看起来很好 但是当使用ggsave保存时,它会打印所有的空面 ggsave("~/desktop/StateFacets.png") 如何保存此绘图以便不渲染空面?当使用默认的plot=last\u plot()时,我可以重现此问题,就像您在ggsave()中一样 看起来解决方法是为绘图指定一个名称,并在保存时将其用作绘图。这样就不会保存额外的面 p1 = ggplot(state_ranks, aes(variable, rank, fil

下面是来自的示例

RStudio绘图查看器中的输出看起来很好

但是当使用
ggsave
保存时,它会打印所有的空面

ggsave("~/desktop/StateFacets.png")


如何保存此绘图以便不渲染空面?

当使用默认的
plot=last\u plot()
时,我可以重现此问题,就像您在
ggsave()
中一样

看起来解决方法是为绘图指定一个名称,并在保存时将其用作
绘图。这样就不会保存额外的面

p1 = ggplot(state_ranks, aes(variable, rank, fill = variable)) +
     geom_col() +
     coord_flip() +
     theme_bw() +
     facet_geo(~ state, grid = "us_state_grid2")

ggsave("~/desktop/StateFacets.png", plot = p1)

它需要是png吗?也许可以尝试其他格式,例如pdf-。不知道它是否有效,但如果不坚持特定格式,则值得尝试。我尝试了pdf和png,结果相同。当我为绘图指定名称并保存时,我没有看到问题。因此,如果我将绘图命名为
p1
,那么使用
ggsave(“StateFacets.png”,plot=p1)保存对我来说很合适。在
ggsave()
中保存“最后一个绘图”时,我可以像你一样复制额外的网格。噢,哇,@aosmith。这就解决了问题。我不这么做是愚蠢的。如果你留下这个回答,我很乐意接受。
p1 = ggplot(state_ranks, aes(variable, rank, fill = variable)) +
     geom_col() +
     coord_flip() +
     theme_bw() +
     facet_geo(~ state, grid = "us_state_grid2")

ggsave("~/desktop/StateFacets.png", plot = p1)