R Markdown:コードから Markdown を出力するには

チャンクに書いたコードから、Markdown を出力したい場合、

  • チャックのオプションで results=’asis’ を設定する
  • knitr::asis_output を使う

で行うことができます。

results=’asis’ した場合

例として、見出し(行頭を # で始める)を出力してみます。

```{r results='asis'}
cat("## top level : chunk\n")
```

```{r results='asis'}
for (i in 1:3) {
  cat("## loop : chunk", i, "\n")
}
```

結果は、

knitr::asis_output した場合

この場合、ループ内では動作しないことを認識しておく必要があります。

```{r}
knitr::asis_output("## top level : asis_output\n")
```

```{r}
for (i in 1:3) {
  knitr::asis_output(paste0("## loop : asis_output", i, "\n"))
}
```

結果は、

ループ内の出力は、そのまま出力されますね。

コメント