9

我正在尝试使用以下方法将绘图渲染为 PDF:

pdf('~/Desktop/test.pdf', bg = "white", paper="USr")    
p <- ggplot(df, aes(something)) + geom_bar();
print(p)
# I'm actually printing a bunch of graphs to the PDF
dev.off()

PDF 功能中的“USr”正在设置 PDF 以横向模式打印。该图已生成并以页面为中心,但右侧/左侧边距较大,并且该图未按比例缩小以占用可用的全部 11 英寸。

我已经尝试对 pdf(...) 命令和 ggplot 本身进行一些调整。有这种方式的解决方案,还是我需要使用专用的报告/pdf 包,如 sweave 或 knitr?

4

1 回答 1

13

这个讨论;底线是您可能想要paper=special明确地使用和设置宽度和高度。

编辑:

这是一个使用 ggsave 多页的懒惰技巧,

library(ggplot2)
plots = replicate(8, qplot(1,1), simplify=FALSE)
library(gridExtra)
p <- do.call(marrangeGrob, c(plots,ncol=1,nrow=1))

ggsave("multipage.pdf", p, width=11, height=8.5)

(但除此之外,pdf(...)后面跟着一个for循环就好了,有时更清晰)

于 2013-05-01T14:35:48.287 回答