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), 20, replace = TRUE),
                 outcome  = sample(1:4, 20, replace = TRUE))

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

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

我意识到添加不同颜色的问题在于 with 中的 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"))) 

https://stackoverflow.com/questions/31323885/

相关文章:

wpf - 如何格式化标签以具有显示格式字符串?

excel - 创建数据透视表时日期值的排序问题

iphone - 具有默认时区的 NSDateFormatter 给出的日期与 NSDate 描述方

html - HTML anchor 标记中超链接文本的内联换行

c# - 我应该使用什么页面图像生成技术?

c# - 是否可以创建扩展方法来格式化字符串?

php - 格式化关联数组声明

php - Aptana PHP Formatter - 使用自定义格式规则

excel - 我可以仅使用 excel 的图表格式在月桶中显示每日数据吗?

excel - 即使第一个数字是 0 vba,也将数字格式化为两位数