在RMarkdown中输出代码块名称

7

众所周知,在RMarkdown中,代码块可以像这样命名:

```{r chunkname}

plot(x,y)

```

能否在输出文档中显示块名称?

1个回答

9
你可以使用 knitr::opts_current$get()$label
例如:
```{r cars}
library(knitr)
opts_current$get()$label
plot(cars)
```

它也可以在代码块外部的行内r代码中使用。此时,它将输出最后一个代码块的标签。

当然,您可以将标签保存在向量中以便稍后使用,例如使用自定义挂钩:

```{r knitr_setup}
library(knitr)
ll <- opts_current$get()$label
knit_hooks$set(label_list = function(before, options, envir) {
    if(before) ll <<- c(ll,opts_current$get()$label)
})
opts_chunk$set(label_list=TRUE)
```

ll 然后将包含块标签列表。然而,你无法访问尚未运行的块的名称。


谢谢。有没有一种全局选项可以打开文档中的所有块名称? - Suat Atan PhD

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接