我试图根据它们的值改变R Shiny数据表的单元格的单元格颜色 . 作为一个例子,我创建了以下应用程序:
# ui.R
fluidPage(
# Outputting data table.
DT::dataTableOutput("table")
)
# server.R
library(DT)
data(iris)
function(input, output) {
# Rendering data table.
output$table <- DT::renderDataTable({
head(iris)
},
options = list(dom = "t",
ordering = FALSE))
}
以下是从上面的代码生成的HTML框架和结果页面:
举个例子,假设我希望所有包含整数的单元格都是红色的 . 有选择地,我只想对第2行第2列和第5行第1列的单元格进行着色,其中值分别为3和5 . R Shiny有可能吗?
我目前的解决方案是将服务器端的单个单元格设置为类,然后使用CSS为它们着色 . 但是,我找不到办法做到这一点 .
2 回答
这有两个想法:
(1)使用Javascript标记整数:
(2)使用隐藏值列标记单元格:
我从Shiny中抽象出来,因为这似乎是一个可数据化的问题 . 此外,可能有更好的选择 .
此页面包含一系列用于格式化DT数据表的提示:https://rstudio.github.io/DT/010-style.html
对于您的具体问题,有一个函数
formatStyle
,它允许您根据表中的特定值设置美学: