在页面的剩余 space 中垂直添加多个绘图

Add multiple plots vertically in the remaining space of page

我是 knitr-ing 这个 .Rmd,但结果将副标题“## PLOTS”与我制作的三个数字分开了。

第一种方法

计算页面的扩容space除以3。 out.height='\dimexpr ((\textheight -3\baselineskip -\parskip -.2em -\abovecaptionskip -\belowcaptionskip)/3)'

第二种方法

out.height 调整为 25% 会减少并导致 space 到字幕,但没有任何反应。

---
title: "My report"
output: 
  pdf_document: 
    keep_tex: yes
    latex_engine: pdflatex
header-includes:
  - \usepackage{subfig}
  - \usepackage{calc}
  - \renewcommand{\figurename}{Fig.} 
---

```{r setup, include=FALSE}
options(tinytex.verbose = TRUE)
knitr::opts_chunk$set(echo = FALSE, message = FALSE)
```

First page. Leaving alone. No figures here

\newpage

## PLOTS

```{r plots, fig.cap = 'My plots', fig.subcap=c('top', 'mid', 'down'), fig.ncol = 1, out.height='\dimexpr ((\textheight  -3\baselineskip -\parskip -.2em -\abovecaptionskip -\belowcaptionskip)/3)', out.extra='keepaspectratio'}
plot(-1:-10)
plot(1:10)
plot(iris$Sepal.Width)
```

在块选项中使用 fig.pos='H' 为我解决了这个问题。 header-includes 中需要 - \usepackage{float}Ref