如何解决缩小使表格难以阅读 - kableExtra
我正在尝试从 rmarkdown 生成报告,我有几个表格要打印在 pdf 文件中。我正在使用 kable
和 kableExtra
包
由于某些列包含文本,此表格的宽度很大。
我在 scale_down
选项中使用 kable_styling
,但表格在 pdf 中变得太小,我不喜欢它。
这是我的 df 的一个例子:
df<-data.frame(A=c('This is a quite long text that doesn't fit','This also is a long text that',B=c('aaaa','bbbb'),C=c('aaaaa','ccccc'),D=c(10,20))
knitr::kable(df,format='latex',booktabs = T,caption = "capt")%>%
kable_styling(latex_options = c("hold_position","scale_down"))
它在 pdf 上的显示方式
我找不到让桌子变大(高度)同时将桌子保持在纸边距内的方法
解决方法
如果我正确理解您的问题,那么答案是简单地增加行分隔,这可以通过 LaTeX 代码(使用 \arraystretch)实现。为此,您只需在代码块上方添加类似 \renewcommand{\arraystretch}{2}
(双行分隔)的内容。例如(使用基于您的代码的东西):
\renewcommand{\arraystretch}{2}
```{r}
df<-data.frame(A=c("This is a quite long text that doesn't fit","This also is a long text that doesn't fit because it is very,very long and boring"),B=c('aaaa','bbbb'),C=c('aaaaa','ccccc'),D=c(10,20))
knitr::kable(df,format='latex',booktabs = T,caption = "capt") %>%
kable_styling(latex_options = c("hold_position","scale_down"))
```
产生这个:
而不是这个:
显然,您可以将行分隔设置为您想要的任何值(例如,\renewcommand{\arraystretch}{5}
表示较大的行,或 \renewcommand{\arraystretch}{1.5}
表示适度的行)。
请注意,下面的任何其他表格都会继续这样做。因此,如果您想恢复正常的行间距,则需要添加 \renewcommand{\arraystretch}{1}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。