如何使用 R 格式表包更改表标题行的外观



我正在使用R中的格式化包来生成HTML表。我可以使用格式化程序来自定义表中数据值的外观,例如字体大小、颜色等。但是我无法弄清楚如何更改表标题行的外观。我可以使用 col.names(( 更改实际的列名,但无法更改它们的外观。

例如,在下表中,如何更改标题行中的文本颜色或背景颜色(mpg,cyl,disp等(

最终,我计划使用 formattable::as.htmlwidget(( 和 library(webshot( 来获取表格的图像文件,请参阅用于导出/保存使用 R 中的格式化包制作的表格的命令

谢谢

library(formattable)
formatRed <- formatter("span"
    , style = x ~ style(color = ifelse(x > 21 , "red", "black")))
formatSize <-  formatter("span"
    , style = x ~ style("font-size" = "8px"))
exTb <- formattable(head(mtcars, 5)
    , table.attr = "class='table table-striped'"
    , list(mpg = formatRed
        , wt = formatSize)
)
exTb

您可以使用样式表。可以将样式表嵌入到.Rmd文件中,也可以将样式表另存为.css文件,然后从.Rmd文件中引用它。 如果需要有关将样式表嵌入.Rmd文件的详细信息,请参阅此问题。如果需要有关引用外部样式表的更多信息,请参见第 3.1.4.1 节。在我的示例中,我将样式表(<style>...</style>组件(嵌入到我的.Rmd文件中。我的样式表定义了样式,以将表格标题的字体更改为Times New Roman,并将表格标题的字体颜色更改为红色。

---
title: "Test"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
<style>
  thead {
     font-family: "Times New Roman";
     color: red;
  }
</style>
```{r, echo=FALSE}
library(formattable)
df <- data.frame(Change = c(1), My = c(2), Style = c(3))
ft <- formattable(df)
ft
```

通过扩展样式表,可以影响 HTML 文件中的其他元素。

最新更新