【发布时间】:2019-06-02 07:41:20
【问题描述】:
我目前正在处理一个 Markdown 文件(带有乳胶),我在其中使用 kable() 和 kableExtra 作为我的表格。问题是我的一些表格太大并且不适合 pdf 页面(即使是横向)。
我尝试使用来自 kableExtra 的latex_options = "scale_down",但由于某些原因它不起作用,它不会改变任何东西。这是我正在运行的代码示例:
kable(dt, "latex", longtable = T, caption = "SampleCaption") %>%
add_header_above(c("","Mens" = 3, "Womens" = 3)) %>%
kable_styling(latex_options = c("striped", "scale_down", "repeat_header"),repeat_header_text = "",
full_width = F) %>%
column_spec(1, width = "10cm")
我已经看过 Google 和 stackoverflow。任何人都知道我做错了什么?谢谢
编辑,这里是 cmets 中要求的工作代码:
kable(dt, "latex", longtable = T, caption = "SampleCaption") %>%
add_header_above(c("","Mens" = 3, "Womens" = 3, "Total" = 2)) %>%
kable_styling(font_size = 7, latex_options = c("striped", "repeat_header"),repeat_header_text = "",
full_width = F) %>%
column_spec(1, width = "5cm")
【问题讨论】:
-
如果您可以提供一个完整的工作降价文件,其中包含足够大的数据来执行此操作,这可能会有所帮助。当然,我也可以使用
iris或ggplot2::diamonds来做到这一点,但是您提供一个完整且可重复的示例确实很有帮助。 -
@r2evans 感谢您的回答。我实际上通过减小表格内的字体大小来解决这个问题。我仍然不知道为什么“scale_down”不能正常工作。
-
这对维护者来说可能是个好问题。你知道吗,它允许使用 LaTeX 的“longtable”包吗?我可以看到我未来的一些工作涉及一个表格的多个页面。 (能否请您发布您的工作代码,如果您有时间,请发布页面之前/之后的屏幕截图?)
-
我的大多数表格都需要 kableExtra 包中的“longtable”功能。您也可以使用 LaTeX 的“longtable”包,它为多个页面上的列共享类似的功能。我可以发布我的一张大桌子的工作代码,但我无法发布真正的前后截图,因为我正在处理的数据包含私人信息。这是我的新代码更改的示例:i.imgur.com/Zod850l.png
-
因此,虽然这是同一张表格,但减小字体大小和列规格有助于使表格适合整个页面。对于长表也可以这样做。我会在我最初的问题中为您发布我的工作代码。
标签: r knitr kable kableextra