如何使用spin()knitr生成报告并在pdf中保存一些图

时间:2013-07-24 13:25:15

标签: r knitr

我对knitr包装有点失落。 我喜欢spin()函数快速给我一个全局的分析视图,但我需要在单独的pdf中保存一些非常重要的图(例如我的文件的第8个图应保存为“Figure1.pdf”并显示在报告中)。

当我写:

Some random code and plots...

pdf('Figure1.pdf')
plot(important plot)
dev.off()

Some random code and plots

旋转()后,重要的情节不会显示在报告中,我希望在报告和pdf中。

有什么办法吗?

由于

2 个答案:

答案 0 :(得分:5)

spin()会保存所有绘图,但默认会保存PNG格式的绘图,因为参数spin(..., format = 'Rmd')(R Markdown使用PNG设备)。

您也可以在R脚本中指定块选项:只需使用#+#-,例如

#' Some random code and plots...

#+ Figure1, fig.path='', dev=c('png', 'pdf')
plot(important plot)

#' Some random code and plots

注意dev选项采用设备向量,如@baptiste所述。

或者您使用Rnw格式,例如(您无需指定dev

spin(..., format = 'Rnw')

在这种情况下,输出将是LaTeX / PDF而不是HTML。

答案 1 :(得分:0)

如果我理解了这个问题,那么关闭设备后重复绘图语句就可以了,而不会在报告中产生副本:

Some random code and plots...

pdf('Figure1.pdf')
plot(important plot)
dev.off()
plot(important plot)

Some random code and plots