2016-01-27 43 views
2

顯示的代碼塊的名稱作爲RMarkdown代碼塊稱爲可命名如下:在輸出RMarkdown

```{r chunkname} 

plot(x,y) 

``` 

是否有可能顯示輸出文檔中chunkname?

回答

5

您可以使用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然後將含有大塊的標籤列表。但是,您無法訪問尚未運行的塊的名稱。

+0

謝謝。是否有全局選項打開文檔中的所有塊名稱? –

+0

@SuatAtan不,但你可以使用鉤子;請參閱編輯 – scoa