Display a graphic in report with sweave : 只显示最终报告,没有中间文件

Display a graphic in report with sweave : Just display the final report and no intermediate file

我很了解 R,但我从 Sweave 开始。

我在 Rstudio 下使用几个脚本生成报告:

在graphic.R

library(ggplot2)
graph_1 <- ggplot(data=iris, aes(x = Sepal.Length, y = Sepal.Width)) + geom_point(aes(color=Species, shape=Species))

在script.Rnw

\documentclass[french,12pt]{article}
\begin{document}

 ... no important...

\begin{figure}[h]
  \begin{center}
   << fig=TRUE, echo=FALSE, height = 2.5>>=
    graph_1
    @
 \caption{caption figure 1}
 \label{graph_1}
  \end{center}
\end{figure}
\end{document}

在main.R

Sweave("script.Rnw", encoding="UTF-8")
tools:::texi2dvi(file="script.tex"), pdf=TRUE)

一切正常:我的报告 (.pdf) 已在文件夹中生成。但我还有一个文件:'script-001.pdf' 包含我添加到同一文件夹中的图形。

我只想要最终报告而不想要中间文件:所以不是文件 'script-001.pdf'。 有人知道这是否可能吗?

谢谢,

需要图形文件以便 LaTeX 可以包含它。但是你可以在 运行 Sweave 和 LaTeX 之后安全地删除它。

我也不喜欢我的工作目录中到处都是中间 PDF。所以我把它们放在一个名为 figures 的文件夹中。使用 Sweave,您可以通过设置合适的前缀来完成此操作:

\SweaveOpts{prefix.string=figures/fig}

您还需要自己创建 figure 文件夹才能使用。

个人推荐:您可能想看看 knitr – 在我看来,它是 Sweave 的更强大的现代版本。