如何使用pander的实时报告生成包含ggplots

时间:2014-01-27 17:16:46

标签: windows r ggplot2 pandoc pander

我使用pander通过Windows7创建docx报告,遵循http://rapporter.github.io/pander/#live-report-generation的示例。

myReport <- Pandoc$new(author="Jerubaal",title="Plot Anything", format="docx")

我试过这个例子

myReport$add(plot(1:10))

这在Windows上不起作用,但在Linux上起作用。

之前我使用brew文件和&lt;%= plot(1:10)=&gt;出现了情节,但我正在尝试生成实时报告,因为该方法似乎最适合我。

我还尝试先将图表保存到文件中,然后创建图像链接,这在Linux中可以再次使用,但不能在Windows中使用:

myReport$add("![](plots/myplot.png)")

我想要包含ggplot2图 - 代码在R中独立运行,但不会出现在docx中(尽管我的确有空行)。

R version 3.0.2(2013-09-25) - “飞盘航行” pandoc.exe 1.12.2.1

我错过了什么?感谢。

编辑:我回到家了,这适用于Ubuntu:

library(pander)
library(ggplot2)
setwd("/home/jerubaal/R/Projects/reports")
attach(movies)
m=movies[sample(nrow(movies), 1000),]
myReport=Pandoc$new(author="Jerubaal",title="Testing plots in reports",format="docx")
myReport$add.paragraph("There should be a plot after this")
p=ggplot(data=m, aes(x=rating,fill=mpaa)) + geom_density(alpha=0.25)
ggsave(filename=paste(getwd(),"plots/movies.png",sep="/"),plot=p,width=6,height=3)
myReport$add(paste("![](",paste(getwd(),"plots/movies.png",sep="/"),")",sep=""))
myReport$add.paragraph("There should be a plot before this")
myReport$export(tempfile())

问:如果png创建或保存太长时间会导致问题吗?

0 个答案:

没有答案