【发布时间】:2018-03-01 07:36:10
【问题描述】:
如何使用 kable 函数格式化 pdf 中的表格?因为我的输出表格宽度超过了pdf的宽度。这是一个例子:
---
output: pdf_document
---
```{r}
df <- cbind(mtcars[1:5,], mtcars[1:5,])
knitr::kable(df)
```
【问题讨论】:
标签: r r-markdown kable
如何使用 kable 函数格式化 pdf 中的表格?因为我的输出表格宽度超过了pdf的宽度。这是一个例子:
---
output: pdf_document
---
```{r}
df <- cbind(mtcars[1:5,], mtcars[1:5,])
knitr::kable(df)
```
【问题讨论】:
标签: r r-markdown kable
一种选择是使用kableExtra 包中的kable_styling。选项latex_options="scale_down" 将适合表格的纸张边距。有关所有格式选项的详细示例,请参阅 the vignette。
---
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(knitr)
library(kableExtra)
```
```{r}
kable(cbind(mtcars[1:5,], mtcars[1:5,]))
```
```{r}
kable(cbind(mtcars[1:5,], mtcars[1:5,]), format="latex", booktabs=TRUE) %>%
kable_styling(latex_options="scale_down")
```
【讨论】:
dplyr tutorial,了解 R 中用于数据操作的管道的常见用例。
请注意,如果您使用的是 longtable,this answer 说,
由于longtable不支持resizebox,所以不能在latex_options中使用“scale_down”选项。
但是,他们建议使用 font_size,例如,
kable(df, "latex", longtable = T, booktabs = T) %>%
kable_styling(font_size = 7)
【讨论】: