css – 如何为R中的数据框/表中的特定单元着色?

前端之家收集整理的这篇文章主要介绍了css – 如何为R中的数据框/表中的特定单元着色?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在以下数据框中为特定单元格着色.例如,在inputval列中,我想突出显示[0.8,0.9)品红色范围内的单元格,以及[0.7,0.8]蓝色范围内同一列中的单元格.同样,我希望值为1的输出列单元格为洋红色,而值为4的输出列单元格为蓝色.对于数据帧中的其余单元格,我希望它们保持白色.

我有以下可重现的代码,仅按行突出显示,并限制我只用洋红色和白色着色.如何添加其他颜色并按单元格添加

set.seed(123)
df <- data.frame(id       = sample(1:100,20,replace = TRUE),inputval = sample(seq(0,1,by=0.01),outcome  = sample(1:4,replace = TRUE))

cols <- with(df,ifelse(outcome == 1,'magenta','white'))

library('htmlTable')
htmlTable(as.matrix(df),col.rgroup = cols)

我意识到添加不同颜色的问题是ifelse调用,这限制了我只有洋红色和白色.我怎样才能在这里添加其他条件?

虽然我知道是什么导致了多色问题,但我对如何仅为特定细胞着色毫无头绪.

这与the accepted answer to this question相同.
谢谢!

解决方法

你考虑过DT吗?
library(DT)
datatable(df,rownames = FALSE) %>%
  formatStyle(columns = "inputval",background = styleInterval(c(0.7,0.8,0.9)-1e-6,c("white","lightblue","magenta","white"))) %>%
  formatStyle(columns = "outcome",background = styleEqual(c(1,4),c("magenta","lightblue")))

猜你在找的CSS相关文章