table 之间的换行符和 pdf_document 在 R Markdown 中输出的图
Line break between table and plot with pdf_document output in R Markdown
我正在使用 R Markdown 创建带有 PDF 输出的文档。
我的代码在“for”循环中创建了许多 table 和图形,在同一代码块 中。我见过的在 PDF 文档中创建换行符的所有技巧 - 前面的斜线和 spaces 的各种组合和排列(例如,换行符、换行符、
、  等) 不工作。所以,我决定偷工减料,只增加我的 ggplot2 边距中的图 space,以在我的 table 和我的图表之间创造更多白色 space 的错觉。
- 理想情况下,我很想知道如何在单个代码块中正确地插入白色space(一行或几行)而不一个错误。
- 但是,当我有一些背景颜色(第一个图)但 背景颜色为白色时不起作用!!?伙计们,这真是奇怪的行为!
请参阅下面的屏幕截图和代码,其中包含两个相同的代码块 - 除了绘图的背景颜色 - 其中一个具有浅米色背景的绘图在 [= 之间显示所需的“白色 space” 43=] 和情节标题,下面的情节(白色背景)不显示相同的“白色 space”。
---
title: "I need a line break"
output: pdf_document
---
```{r setup, include=FALSE}
library(ggplot2)
library(knitr)
library(ggplot2)
knitr::opts_chunk$set(echo = FALSE,
include = TRUE,
message = FALSE,
warning = FALSE,
error = FALSE)
```
```{r, results = "asis", fig.height = 2}
for (i in 1) {
mytable <- kable((iris[c(1,2),]), booktabs = TRUE)
print(mytable)
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void() +
theme(plot.background = element_rect(fill = "#FFFEEB", color = "white"),
plot.margin = unit(c(1, 0, 0, 0), "cm"))
print(myplot)
}
```
```{r, results = "asis", fig.height = 2}
for (i in 1) {
mytable <- kable((iris[c(1,2),]), booktabs = TRUE)
print(mytable)
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void() +
theme(plot.background = element_rect(fill = "white", color = "white"),
plot.margin = unit(c(1, 0, 0, 0), "cm"))
print(myplot)
}
```
能否用cat加换行来解决你的问题?例如
---
title: "I need a line break"
output: pdf_document
---
```{r setup, include=FALSE}
library(ggplot2)
library(knitr)
library(ggplot2)
knitr::opts_chunk$set(echo = FALSE,
include = TRUE,
message = FALSE,
warning = FALSE,
error = FALSE)
```
```{r, results = "asis", fig.height = 2}
for (i in 1:2) {
mytable <- kable((iris[c(1,i),]), booktabs = TRUE)
print(mytable)
cat("\ ")
cat("\linebreak")
cat("\linebreak")
cat("\linebreak")
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void()
print(myplot)
cat("\linebreak")
cat("\linebreak")
}
```
(需要cat("\ ")
以便有一行结束)
我正在使用 R Markdown 创建带有 PDF 输出的文档。
我的代码在“for”循环中创建了许多 table 和图形,在同一代码块 中。我见过的在 PDF 文档中创建换行符的所有技巧 - 前面的斜线和 spaces 的各种组合和排列(例如,换行符、换行符、
、  等) 不工作。所以,我决定偷工减料,只增加我的 ggplot2 边距中的图 space,以在我的 table 和我的图表之间创造更多白色 space 的错觉。
- 理想情况下,我很想知道如何在单个代码块中正确地插入白色space(一行或几行)而不一个错误。
- 但是,当我有一些背景颜色(第一个图)但 背景颜色为白色时不起作用!!?伙计们,这真是奇怪的行为!
请参阅下面的屏幕截图和代码,其中包含两个相同的代码块 - 除了绘图的背景颜色 - 其中一个具有浅米色背景的绘图在 [= 之间显示所需的“白色 space” 43=] 和情节标题,下面的情节(白色背景)不显示相同的“白色 space”。
---
title: "I need a line break"
output: pdf_document
---
```{r setup, include=FALSE}
library(ggplot2)
library(knitr)
library(ggplot2)
knitr::opts_chunk$set(echo = FALSE,
include = TRUE,
message = FALSE,
warning = FALSE,
error = FALSE)
```
```{r, results = "asis", fig.height = 2}
for (i in 1) {
mytable <- kable((iris[c(1,2),]), booktabs = TRUE)
print(mytable)
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void() +
theme(plot.background = element_rect(fill = "#FFFEEB", color = "white"),
plot.margin = unit(c(1, 0, 0, 0), "cm"))
print(myplot)
}
```
```{r, results = "asis", fig.height = 2}
for (i in 1) {
mytable <- kable((iris[c(1,2),]), booktabs = TRUE)
print(mytable)
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void() +
theme(plot.background = element_rect(fill = "white", color = "white"),
plot.margin = unit(c(1, 0, 0, 0), "cm"))
print(myplot)
}
```
能否用cat加换行来解决你的问题?例如
---
title: "I need a line break"
output: pdf_document
---
```{r setup, include=FALSE}
library(ggplot2)
library(knitr)
library(ggplot2)
knitr::opts_chunk$set(echo = FALSE,
include = TRUE,
message = FALSE,
warning = FALSE,
error = FALSE)
```
```{r, results = "asis", fig.height = 2}
for (i in 1:2) {
mytable <- kable((iris[c(1,i),]), booktabs = TRUE)
print(mytable)
cat("\ ")
cat("\linebreak")
cat("\linebreak")
cat("\linebreak")
myplot <- ggplot(iris) +
labs(title = "Gorgeous plot") +
geom_point(aes(Sepal.Length, Sepal.Width)) +
theme_void()
print(myplot)
cat("\linebreak")
cat("\linebreak")
}
```
(需要cat("\ ")
以便有一行结束)