【问题标题】:Scale kable table to fit page width缩放 kable 表以适应页面宽度
【发布时间】: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


【解决方案1】:

一种选择是使用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")
```

【讨论】:

  • 您好,为什么我尝试将代码转换为pdf时出现错误。 pandoc.exe:错误生成 PDF 错误:pandoc 文档转换失败,错误 43 另外:警告消息:运行命令“C:/Program Files/RStudio/bin/pandoc/pandoc”+RTS -K512m -RTS Model_v101A_Validation_NewTables_v7.utf8。 md --to latex --from markdown+autolink_bare_uris+ascii_identi
  • 您没有提供可重现的示例,因此很难确定导致错误的原因。
  • 哦,我已经看到了我的错误。我没有包括 r 设置。谢谢。
  • 嗨,你能解释一下“%>%”的用途吗?我是 R 新手。
  • 这是一个“管道”运算符。它将第一个函数的结果通过管道传递给第二个函数。看看这个dplyr tutorial,了解 R 中用于数据操作的管道的常见用例。
【解决方案2】:

请注意,如果您使用的是 longtable,this answer 说,

由于longtable不支持resizebox,所以不能在latex_options中使用“scale_down”选项。

但是,他们建议使用 font_size,例如,

kable(df, "latex", longtable = T, booktabs = T) %>%
  kable_styling(font_size = 7)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多