当使用result ='asis'时,有没有办法在rmarkdown / knitr中显示格式器R的输出?
示例为以下功能:
myfun <- function() {
cat("hello!\n")
cat(c("one" = 1, "two" = 2))
}
然后,该块将在新行上打印第二个cat
:
```{r}
myfun()
```
但这将忽略myfun
中的格式:
```{r, results = "asis"}
myfun()
```
是否有一种方法可以使results='asis'
保持原样,同时保持myfun
的输出格式?
答案 0 :(得分:6)
如果愿意在行尾添加两个或多个空格,可以使用编织块选项results = "asis"
。也就是说,您需要编写"hello\n"
来代替换行"hello \n"
。
R Markdown代码示例:
---
output: html_document
---
```{r}
myfun <- function() {
cat("hello! \n")
cat(c("one" = 1, "two" = 2))
}
```
```{r results = "asis"}
myfun()
```
给予
为什么空白?这是因为在一行的末尾使用两个空格来表示Markdown中的强行中断。例如,此引用来自Pandoc's Markdown(这是R Markdown使用的默认markdown风格):
段落
段落是一行或多行文本,后接一个或多个空行。换行符被视为空格,因此您可以根据需要对段落进行重排。如果需要强行换行,请在行尾放置两个或多个空格。