自动调整R中绘图的大小以适应PDF输出

16

在R中使用pdf()函数将画布保存成一个外部文件时,我们可以指定width和/或height来调整画布的大小。但是,在某些情况下,我们会得到多个画布(例如使用par(mfrow=c(2,4))),此时很难确定PDF文件的最佳widthheight以使所有画布都正确显示。是否有一种方法可以让R自动"适应画布"并放入PDF文件中呢?我已经搜索了pdf()中的参数并尝试了一些方法,但结果并不理想。非常感谢!


2
这似乎非常模糊。一个人如何确定“最佳”宽度和高度? - IRTFM
@DWin:抱歉让你感到困惑。我所说的“最佳”是指所有图表部分都能被读者清晰地看到,而且不会因为纸张大小限制(如A4)而出现任何“截断”。 - alittleboy
据我所知,在pdf设备中没有改变单个页面大小的方法。大多数人会生成多个不同大小的pdf,并使用Ghostscript将这些单独的页面粘合在一起。 - sebastian-c
@sebastian-c:哦...那不是个好消息...无论如何,感谢您的评论! - alittleboy
1个回答

2
如何使用ggplot呢?
require(ggplot2)

# Bogus data
x <- rnorm(10000)
y <- as.factor(round(rnorm(10000, mean=10, sd=2), 0))
df <- data.frame(vals=x, factors=y)

myplot <- ggplot(data=df, aes(x=vals)) +
  geom_density() +
  facet_wrap(~ factors)

ggsave(filename="~/foo.pdf", plot=myplot, width=8, height=10, units="in")

编辑:如果您需要在多个页面上打印,请参阅此问题


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接