【发布时间】:2013-04-10 15:47:27
【问题描述】:
我正在尝试同时打印到两个设备。在大多数情况下,我可以创建我想要的输出,但我不确定如何更改第一个设备的 par$mfrow 设置。
pdf(file="test.all.pdf",width=7,height=10,pointsize=12,bg="white",paper="letter",pagecentre=T)
par(mfrow=c(3,2))
for(i in 1:12){
temp <- rnorm(500,i,1)
pdf(paste0("test_",i,".pdf"))
dev.control(displaylist="enable")
hist(temp)
dev.copy(which=2)
dev.off(which=3)
}
graphics.off()
我正在尝试为每个图获取单独的 .pdf 文件,然后是一个组合的 .pdf 文件,每页有 6 个图。相反,我只是得到一个组合的 .pdf 文件,每页 1 个图。
我根据post 构建了我的代码。
【问题讨论】:
-
您的目标(6-up 格式)应该仅通过调用
pdf来实现。是对pdf(和dev.off)的内部调用搞砸了。 -
@dayne 我意识到了这一点,但想为其他用户链接上下文。我将在短时间内删除我的评论,并建议您也这样做以避免混淆线程。如果您在帖子中添加链接,我将删除原始评论。
-
@DWin 我希望它输出两个文件,所以我需要两次调用
pdf。一个文件应包含所有图,每页六个。那么每个地块也应该有一个单独的文件。 -
欢迎您随心所欲地用头撞墙,但我认为 R 中的图形设备模型不会支持嵌套调用。您可以轻松地创建一个执行两组独立操作的函数。