你如何在 knitr 中创建部分和新行

how do you create sections and new lines in knitr

我正在处理我的第一个 knitr 文档。我已经取得了很大的进步,但是,我还能弄清楚两件事。

我正在尝试做两件事:

  1. 插入部分
  2. 插入新行

我有这段代码可以为每个应用程序、打印标题、图表创建部分:

```{r qplot,fig.width=10, fig.height=8, message=FALSE, results = 'asis', echo=FALSE, warning=FALSE, fig.cap='long caption', fig.scap='short'}

library(ggplot2)
library(knitr)
cat(paste("Application Name-", App))
cat("\n"
print(ggplot(data, aes(Date, cpu))+geom_line()
cat("\n")
```

我看到应用程序名称文本与图表在同一行。 cat("\n") 似乎不起作用。另外,我如何在 pdf 中插入部分,以便如果我点击某个部分,它将转到正确的部分?

您正在寻找这样的东西吗?

---
title: "My Report"
output: 
  pdf_document: 
    number_sections: yes
    toc: yes
---

# Application `r 1+1`

```{r qplot,fig.width=10, fig.height=8, message=FALSE, results = 'asis', echo=FALSE, warning=FALSE, fig.cap='long caption', fig.scap='short', tidy=FALSE}
library(ggplot2)
ggplot(iris, aes(Sepal.Length, Sepal.Width))+geom_line()
```

一般来说,对于 markdown 文档,你插入一个新的部分

# Section Name

您可以包含更多 # 以获得小节、子小节等。

新行的降价是行尾的两个空格。

有关 markdown 语法的更多信息,请参阅 https://www.rstudio.com/wp-content/uploads/2015/02/rmarkdown-cheatsheet.pdf

如果要在文档中插入分节符和换行符,则需要使用 results='asis' chunk 选项和 cat("...") 发送,其中 ... 的内容是使用您要呈现的语言。

因此,如果您要呈现为 PDF,您将使用 cat("\section{Section Name}") 获取分节符并使用 cat("\newline") 获取新行。

```{r qplot,fig.width=10, fig.height=8, message=FALSE, results = 'asis', echo=FALSE, warning=FALSE, fig.cap='long caption', fig.scap='short'}

library(ggplot2)
library(knitr)
cat(paste("\section{Application Name-", App, "}"))
print(ggplot(data, aes(Date, cpu))+geom_line()
cat("\newline")
```