我想知道如何使用rmarkdown生成在同一文档中同时具有纵向和横向布局的pdf.如果有一个纯粹的rmarkdown选择,甚至比使用乳胶更好.
这是一个小的,可重复的例子.首先,.Rmd在RStudio中渲染它(按Knit PDF按钮)会生成包含横向布局中所有页面的pdf:
---
title: "All pages landscape"
output: pdf_document
classoption: landscape
---
```{r}
summary(cars)
```
\newpage
```{r}
summary(cars)
```
Run Code Online (Sandbox Code Playgroud)
然后尝试创建一个混合纵向和横向布局的文档.其中的基本设置YAML是根据此处的"包含"部分完成的.该in_header文件"header.tex"只包含\usepackage{lscape},包建议的knitr景观布置在这里.该.tex文件与文件位于同一目录中.Rmd.
---
title: "Mixing portrait and landscape"
output:
pdf_document:
includes:
in_header: header.tex
---
Portrait:
```{r}
summary(cars)
```
\newpage
\begin{landscape}
Landscape:
```{r}
summary(cars)
```
\end{landscape}
\newpage
More portrait:
```{r}
summary(cars)
```
Run Code Online (Sandbox Code Playgroud)
但是,此代码会导致错误:
# ! You can't use …Run Code Online (Sandbox Code Playgroud) 我正在使用 knit 编写 .Rnw 文件和 stargazer 包来构建回归输出表。在大多数情况下,它工作得很好,但我想将桌子旋转 90 度,就像我可以在 LaTeX 中使用\usepackage{sidewaystable}.Rnw 之外轻松做到的那样
\documentclass{article}
\begin{document}
<<table1, echo=FALSE, message=F, warning=F, results="asis">>=
library(stargazer)
lm1 <- lm(mpg ~ wt, data = mtcars)
lm2 <- lm(mpg ~ hp, data = mtcars)
lm3 <- lm(mpg ~ cyl, data = mtcars)
lm4 <- lm(mpg ~ disp, data = mtcars)
stargazer(lm1, lm2, lm3, lm4, title = "Basic OLS Models", omit.stat = c("f", "ser"))
@
\end{document}
Run Code Online (Sandbox Code Playgroud) 我想在我的 PDF 输出中旋转一个宽表。我遇到了这个奇妙的问题,但我的桌子更长了。
当我复制/粘贴该问题中显示的示例之一时,使用 RMarkdown 效果很好。
library(kableExtra)
kable(iris[1:5,],
format = "latex", booktabs = TRUE) %>%
kableExtra::landscape()
Run Code Online (Sandbox Code Playgroud)
但是,如果我们删除子集,我们会看到表格超出了页面的尺寸。
library(kableExtra)
kable(iris,
format = "latex", booktabs = TRUE) %>%
kableExtra::landscape()
Run Code Online (Sandbox Code Playgroud)
所以我的问题很简单:我们如何通过将表格分成几部分来创建所需数量的 PDF 页面?