在 Rmd pdf 输出中包装 add_header_above

Wrap add_header_above in Rmd pdf output

问题

如何将 header 换行(由 add_header_above() 插入)?

对一层 header 执行此操作,但当有第二个(或第三个)header.

时不起作用

可重现的例子

library(kableExtra)
names(iris) <- c("L", "W", "L", "W", " ")
iris[1:2, ] %>% 
  kable("latex") %>% 
  add_header_above(
    c(
      "Sepal is great" = 2, 
      "Petal is better, (in fac my favorite)" = 2, 
      "nc" = 1)
    ) %>%
  column_spec(2:ncol(iris), width = "0.3in")

当前输出看起来

R 代码的预期输出(大致)

正如我在 Best Practice for newline in LaTeX table 中所说,如果您需要在所有 kableExtra 函数中换行,只需使用 \n。否则,您可以尝试 linebreak 函数。

library(kableExtra)
names(iris) <- c("L", "W", "L", "W", " ")
iris[1:2, ] %>% 
  kable("latex") %>% 
  add_header_above(
    c(
      "Sepal\nis great" = 2, 
      "Petal is better,\n(in fac my favorite)" = 2, 
      "nc" = 1)
    ) %>%
  column_spec(2:ncol(iris), width = "0.3in")