我尝试从 Sweave 切换到 knitr,但我遇到了一个问题,即在一个块中使用多个图。这里有一个例子:让这个.Rnw 简单文件(名为Essai.Rnw)。当然,pdf中只显示了一个图:
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
<<fig=TRUE>>=
plot(1:10, exp(1:10))
plot(1:10, log(1:10))
@
\end{document}
我使用以下方法将其转换为 knitr 格式:
library("knitr", lib.loc="/Library/Frameworks/R.framework/Versions/3.0/Resources/library")
Sweave2knitr("Essai.Rnw")
我编辑文件来得到这个:
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
<<include=FALSE>>=
require(knitr)
opts_chunk$set(concordance=TRUE)
@
<<>>=
plot(1:10, exp(1:10))
plot(1:10, log(1:10))
@
\end{document}
在 Rstudio 全局首选项中,我使用 Knitr 设置 Weave Rnw 文件,当我使用 Rstudio 中的编译 pdf 按钮生成 pdf 文件时,我只得到一个图,而不是我预期的 2。
这是我的 sessionInfo()
> sessionInfo()
R version 3.0.1 Patched (2013-06-10 r62935)
Platform: x86_64-apple-darwin10.8.0 (64-bit)
locale:
[1] fr_FR.UTF-8/fr_FR.UTF-8/fr_FR.UTF-8/C/fr_FR.UTF-8/fr_FR.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] knitr_1.2
loaded via a namespace (and not attached):
[1] digest_0.6.3 evaluate_0.4.3 formatR_0.7 stringr_0.6.2 tools_3.0.1