我希望能够使用knitr / rmarkdown生成一个文档,将所有输出保存在一起,但将代码保留到最后,理想情况下作为引用的脚注(即每个数字的代码或可以使用脚注在附录中查找输出。这可能吗?
答案 0 :(得分:7)
如果我理解你的意思。
您可以向原始代码块添加标签,然后使用ref.label
属性引用它,并阻止其使用eval=FALSE
进一步执行。
例如:
# Header
Bla bla ...
````{r plot1,echo=FALSE}
x = rnorm(100,10,5)
y = rnorm(100,10,5)
plot(x,y)
````
# Appendix
Code chunk:
````{r ref.label="plot1",eval=FALSE}
```
执行第一个块(没有回声)并显示一个数字,第二个块只是回显第一个块的源。
答案 1 :(得分:3)
一种解决方案是在最后添加此块。
{r ref.label=knitr::all_labels(), echo=TRUE, eval=FALSE}
然后,您将所有代码一起进行评估。