将 R 中的几个图导出到 ppt

Export several plots from R into ppt

我在这里找到了一个函数,可以为在 R 中创建的绘图创建一个带有幻灯片的 ppt。 这是该函数的 link:

我希望我的程序可以添加多张幻灯片(每张幻灯片包含一张图)。

我目前使用:export2ppt(file="plot.pptx") 但是我不知道如何向同一个文件添加第二个图。

举个例子

library(ReporteRs)
doc =pptx( ) # create pptx
doc=addSlide(doc,"Title and Content") # add slide
doc<-addTitle(doc,"first") # add title
fun_1<-function(){
  plot(mpg ~ wt,  data = mtcars)
}
doc <- addPlot(doc, fun= fun_1,vector.graphic =FALSE )  # add plot

doc=addSlide(doc,"Title and Content") # add slide
doc<-addTitle(doc,"Second") # add title

fun_2<-function(){
  plot(mpg ~ cyl,  data = mtcars)
}
doc <- addPlot(doc, fun= fun_2,vector.graphic =FALSE ) # add plot
writeDoc(doc, "r-2.pptx" )

下面的答案已经过时,因为 ReporteRs 已从 CRAN 中删除并被 officer 取代。我刚刚在 officer 的基础上制作了一个新的包 export,它允许使用 graph2ppt() 命令和 append=TRUE 选项轻松地将多个图表导出到单个 Powerpoint 演示文稿,例如制作包含 2 张幻灯片的演示文稿:

install.packages("export")
library(export)
library(ggplot2)
qplot(Sepal.Length, Petal.Length, data = iris, color = Species, 
      size = Petal.Width, alpha = I(0.7))     
graph2ppt(file="plots.pptx", width=6, height=5) 
qplot(Sepal.Width, Petal.Length, data = iris, color = Species, 
      size = Petal.Width, alpha = I(0.7))     
graph2ppt(file="plots.pptx", width=6, height=5, append=TRUE) 

eoffice 可能是另一种选择。使用以下命令:

install.packages("eoffice")
topptx(file="plots.pptx", width=6, height=5,append=T)