R语言 带有2个ggplot()图形的PDF文档中的空白页

ewm0tg9j  于 2023-04-27  发布在  其他
关注(0)|答案(2)|浏览(175)

我在我的PDF R markdown文档中遇到了一个空白页问题。当我在单个代码块中绘制2个ggplot()图形时,似乎在渲染图形之前创建了一个空白页。下面是问题的一个示例(完整的.Rmd文件,uncomment要运行的每个块的开始和结束,其中UNCOMMENT代表!):

---
title: "Test"
author: "My Name"
output:
  pdf_document:
    number_sections: yes
    toc: yes
---

\newpage

# Plots

## First subtitle

Here I plot some data:

#UNCOMMENT```{r pressure, echo=FALSE, message = FALSE}
library(tidyverse)

# line chart
ggplot(pressure, aes(x = temperature, y = pressure)) +
        geom_line()

# step chart
ggplot(pressure, aes(x = temperature, y = pressure)) +
        geom_step()

#UNCOMMENT```

\newpage

# More plots

#UNCOMMENT```{r, echo = FALSE}

# line chart with points
ggplot(pressure, aes(x = temperature, y = pressure)) +
        geom_line() +
        geom_point()

# line chart
ggplot(pressure, aes(x = temperature, y = pressure)) +
        geom_line()

#UNCOMMENT```

当knitted时,PDF输出在我的“更多图”块之前有一个空白页,即第4页是空白的:
[![pdf输出][1]][1] x1c 0d1x
如果我把两个图分成两个不同的块,问题就解决了,但是我想在一些块中绘制多个图,所以这不是一个解决方案。
先谢谢你了!

0mkxixxg

0mkxixxg1#

感谢this link。使用标题有助于使情节居中。这只是一个建议,而不是对你的问题的明确回答。

---
 title: "Test"
 author: "My Name"
 output: pdf_document
 header-includes:
   - \usepackage{subfig}
---  

```{r echo =FALSE, results=FALSE}
captions <- c("Caption 1",
              "Caption 2", 
              "Caption 3",
              "Caption 4")
library(ggplot2)
 # line chart
 p1<- ggplot(pressure, aes(x = temperature, y = pressure)) +
         geom_line()

 # step chart
 p2<-ggplot(pressure, aes(x = temperature, y = pressure)) +
         geom_step()

 # line chart with points
 p3<-ggplot(pressure, aes(x = temperature, y = pressure)) +
         geom_line() +
         geom_point()

 # line chart
 p4<-ggplot(pressure, aes(x = temperature, y = pressure)) +
         geom_line()

 p1
 p2
 p3
 p4
xpcnnkqh

xpcnnkqh2#

我相信这种行为源于LaTeX将数字作为浮点数处理的事实。

...
output: 
    pdf_document:
        # improve float placement
        # see https://bookdown.org/yihui/rmarkdown-cookbook/figure-placement.html
        extra_dependencies: ["flafter"]

...
  output: 
    pdf_document:
        # Another way to try and control float placement
        extra_dependencies: ["float"]

请注意,间距关系到knitr如何解释YAML。
另一种选择是使数字小一点,看看这是否有助于浮动放置。

相关问题