我knitr
用来生成报告。但是,我经常首先准备包含所有图表的“内部”文档,然后在最终报告或论文中只想包含一些数字。
比如说,我有一组系统生成的数字,比如说我循环浏览我的样本:
<<sample, fig.keep = 'all'>>=
specimen <- c("436a", "783a", "10b")
for (s in specimen) # in reality it would e.g. be levels (specimen)
plot (results [s])
@
这将产生许多文件figures/sample1.pdf
,figures/sample2.pdf
等等。虽然编号为 1、2、... 对 knitr 生成的报告有好处,但如果我想在论文中包含其中一个图,则很麻烦且容易出错找出哪个 .pdf 属于哪个样本。
我怎么知道knitr
使用文件名,例如"figures/sample-436a.pdf"
?
我试过<<fig.path = sprintf ("figures/sample-%s", s)>>=
了,但这不起作用:s
未知,所以我猜fig.path
是在块处理开始时评估的,而不是在保存块时。
PS:减少错误风险的一个明显方法是标题,但恕我直言,这在论文中很难看。