更改 knitr::kable headers 的背景颜色
Change background colour of knitr::kable headers
我需要更改印有 knitr::kable 的 table 的 header 的背景颜色。我可以使用 kableExtra::column_spec
更改整个列的背景,但它不会影响 header 行:
library(knitr)
library(kableExtra)
kable(data.frame(a = 1, b = 2)) %>%
column_spec(1, background = "yellow")
想要的结果:
kable
输出,其中 a
列的 header 具有黄色背景(其余 table 具有白色背景)。
您可以使用 cell_spec
执行此操作。例如,
df <- data.frame(a = 1, b = 2)
names(df)[1] <- cell_spec(names(df)[1], background = "yellow")
kable(df, escape = FALSE)
这不会自动显示在 RStudio 中;您需要通过 kableExtra
函数将其通过管道传输来执行此操作。例如,此管道除了标记要显示的 table 之外什么都不做。
kable(df, escape = FALSE) %>% column_spec(1)
会显示
另一种方法是将包括 header 在内的整个列设置为黄色,然后将 non-header 部分设置为继承的颜色。你这样做:
kable(df) %>%
column_spec(1, background = "yellow", include_thead = TRUE) %>%
column_spec(1, background = "inherit")
这个以乱七八糟的结尾 HTML,但间距看起来好一点:
kable(data.frame(a = 1, b = 2)) %>%
row_spec(0, background = "yellow")
我需要更改印有 knitr::kable 的 table 的 header 的背景颜色。我可以使用 kableExtra::column_spec
更改整个列的背景,但它不会影响 header 行:
library(knitr)
library(kableExtra)
kable(data.frame(a = 1, b = 2)) %>%
column_spec(1, background = "yellow")
想要的结果:
kable
输出,其中 a
列的 header 具有黄色背景(其余 table 具有白色背景)。
您可以使用 cell_spec
执行此操作。例如,
df <- data.frame(a = 1, b = 2)
names(df)[1] <- cell_spec(names(df)[1], background = "yellow")
kable(df, escape = FALSE)
这不会自动显示在 RStudio 中;您需要通过 kableExtra
函数将其通过管道传输来执行此操作。例如,此管道除了标记要显示的 table 之外什么都不做。
kable(df, escape = FALSE) %>% column_spec(1)
会显示
另一种方法是将包括 header 在内的整个列设置为黄色,然后将 non-header 部分设置为继承的颜色。你这样做:
kable(df) %>%
column_spec(1, background = "yellow", include_thead = TRUE) %>%
column_spec(1, background = "inherit")
这个以乱七八糟的结尾 HTML,但间距看起来好一点:
kable(data.frame(a = 1, b = 2)) %>%
row_spec(0, background = "yellow")