2

我正在尝试使用DT包在数据表上的多个列上应用样式:

例如,我想根据该列的范围为每列创建颜色条。我已经发现我可以做一个 for 循环:

columns <- c("Sepal.Length","Sepal.Width","Petal.Length","Petal.Width")

dt <- DT::datatable(iris)
for( x in columns){
  dt <- dt %>%
    DT::formatStyle(
      x,
      background = DT::styleColorBar(iris[[x]],"steelblue"),
      backgroundSize = '90% 90%',
      backgroundRepeat = 'no-repeat',
      backgroundPosition = 'center'
    )

}
dt

在此处输入图像描述

但是,就我个人而言,我不是很喜欢循环,有没有一种内置的或更简单的方法来“映射”formatStyle而不使用循环?谢谢!


我已经在https://rstudio.github.io/DT/010-style.html上查看了 DT 指南,最后一个示例看起来很相似。但在示例中,不同的列共享相同的范围。我想要的是每列使用自己的最小值和最大值来创建彩条。

4

0 回答 0