The*_*aya 5 r knitr r-markdown
我的文档中有很多块,其中一些块并排生成 2 个图,一些并排生成 3 个图,其他一些仅用于显示结果(其中一些甚至回显代码)。我可以按如下方式设置文档的全局knitr选项;
{r setup, include = FALSE, cache = FALSE}
knitr::opts_chunk$set(
comment = NA,
fig.width = 7,
out.width = 50%,
warning = FALSE
)
Run Code Online (Sandbox Code Playgroud)
但我想设置多组此类全局选项,以便一些针对并排双数字的数字块,一些针对结果输出。
由于选项只是一个列表,我可以创建各种选项的多个列表,但我想知道如何将这些选项包含在这些单独的块中?
我建议使用选项挂钩来完成这项工作。每当设置某个块选项(即不是NULL)时,相应的选项挂钩就会运行并设置所需的块选项。
以下示例定义了两组规则:“chatty”在输出前面打印提示和一个非常有趣的符号,而“silent”则抑制提示并在输出前面不打印任何内容。
同样,您可以根据需要设置fig.width和。out.width
```{r, echo = FALSE}
library(knitr)
opts_hooks$set(chatty = function(options) {
options$prompt = TRUE
options$comment = ";-)"
return(options)
})
opts_hooks$set(silent = function(options) {
options$promt = FALSE
options$comment = ""
return(options)
})
```
# Demo
## Default
```{r}
print("Default")
```
## Chatty
```{r, chatty = TRUE}
print("chatty")
```
## Silent
```{r, silent = TRUE}
print("silent")
```
Run Code Online (Sandbox Code Playgroud)