我正在使用ggforce软件包在多个页面上生成多面图:
library(ggforce)
for(i in 1:6){
ggplot(diamonds) +
geom_point(aes(carat, price), alpha = 0.1) +
facet_wrap_paginate(~cut:clarity, ncol = 2, nrow = 2, page = i)
ggsave(paste0("~/diamonds_", i, ".pdf"))
}
生成预期的6个PDF文件:
用一个6页的单一pdf输出最简单的方法是什么?
我知道可以使用
reports
和pdftools
包来完成此操作,但是我想知道是否有更直接的方法来完成此操作。我希望ggforce为单页输出提供功能,但是看起来不是这样吗? 最佳答案
您甚至都不需要使用ggsave
,可以通过以下方式将所有这些图放入一个pdf
中:
pdf("~/diamonds_all.pdf")
for(i in 1:6){
print(ggplot(diamonds) +
geom_point(aes(carat, price), alpha = 0.1) +
facet_wrap_paginate(~cut:clarity, ncol = 2, nrow = 2, page = i))
}
dev.off()