我正在使用新的 Tufte从 Rstudio 打包以生成报告。我想在我的数字旁边有一个相当复杂的边注。在 chunk header 中构建标题非常麻烦,所以我想在 chunk 内部设置 fig.cap 选项。
我已经尝试将其作为测试用例,但它似乎不起作用。
knitr::opts_current$set("fig.cap"="The Caption")
有谁知道如何正确完成这项工作?
有人指出了有关内嵌字幕的相关问题。虽然概念相似,但这个问题非常针对 knitr 的 latex 方面。即使在找到我的问题的答案之后,阅读那个问题和答案仍然太遥远,无法回答我的问题。
我终于破解了它并留下答案,希望能为其他人节省几个小时的研究时间。
knitr::opts_current$set
什么都不做。你可以使用
knitr::opts_current$get
读取当前 block 设置。当前chunk的设置只能在chunk header中设置。
为了解决我不想在标题中插入复杂标题的问题,我使用了以下部分:
设置包选项以在使用此创建图形后评估标题:
knitr::opts_knit$set(eval.after = 'fig.cap')
在 block 头中,包含如下内容:
fig.cap=varName
在 block 内,将 varName
设置为您想要的图形标题值。
varName <- paste("This is a sample caption evaluated on", Sys.Date(), sep=" ")
我还没有在同一个 block 中玩过多个图形和标题,所以我不确定它是如何工作的,但这绝对适用于单个图形 block 。