如何将R图形打印到多页PDF和多个PDF?

Dan*_*ein 49 graphics plot r

我知道

 pdf("myOut.pdf")
Run Code Online (Sandbox Code Playgroud)

将在R中打印成PDF.如果我愿意的话

  1. 制作一个循环,在PDF文件的新页面上打印后续图形(附加到末尾)?

  2. 创建一个循环,将后续图形打印到新的PDF文件(每个文件一个图形)?

Dir*_*tel 56

你看过帮助(pdf)了吗?

用法:

 pdf(file = ifelse(onefile, "Rplots.pdf", "Rplot%03d.pdf"),
     width, height, onefile, family, title, fonts, version,
     paper, encoding, bg, fg, pointsize, pagecentre, colormodel,
     useDingbats, useKerning)
Run Code Online (Sandbox Code Playgroud)

参数:

file: a character string giving the name of the file. For use with
      'onefile=FALSE' give a C integer format such as
      '"Rplot%03d.pdf"' (the default in that case). (See
      'postscript' for further details.)
Run Code Online (Sandbox Code Playgroud)

对于1),将onefile保留为默认值TRUE.几个图进入同一个文件.

对于2),将onefile设置为FALSE并选择具有C整数格式的文件名,R将创建一组文件.

  • 如果使用网格布局,如何移动到下一个PDF页面?例如,你准备了几个ggplots,把它们放在多页PDF的p1上的视口中,但是如何让下一个视口进入第2页...... 3 ......等等? (4认同)

Mar*_*ark 36

不确定我理解.

附加到同一文件(每页一个图):

pdf("myOut.pdf")
for (i in 1:10){
  plot(...)
}
dev.off()
Run Code Online (Sandbox Code Playgroud)

每个循环的新文件:

for (i in 1:10){
  pdf(paste("myOut",i,".pdf",sep=""))
  plot(...)
  dev.off()
}
Run Code Online (Sandbox Code Playgroud)

  • 你甚至不需要在文件名上粘贴() - R也可以为你做到这一点; 看到我的回答. (5认同)