我正在尝试根据单元格的内容格式化 R Shiny 应用程序中表格单元格的背景颜色。内容为 TRUE 或 FALSE,并使用布尔函数进行分配。styleEqual() 不是格式化单元格的正确方法吗?以下将运行,但我的细胞保持未着色。
output$myTable <-
DT::renderDataTable({
result<-custom_function()
result<-
datatable(result)%>% formatStyle(
names(result),
backgroundColor = styleEqual(c(TRUE, FALSE), c('green', 'red'))
)
return(res)
})
Run Code Online (Sandbox Code Playgroud)
styleEqual是可行的方法,但您需要使用数字 ( 1, 0) 值而不是逻辑值 ( TRUE, FALSE)。
这是一个例子:
library(shiny)
library(DT)
library(magrittr)
iris2 <- iris
iris2$logical <- ifelse(iris$Sepal.Length > 5, TRUE, FALSE)
ui <- fluidPage(
DT::dataTableOutput("tbl")
)
server <- function(input, output, session) {
output$tbl <- DT::renderDataTable( {
datatable(iris2) %>% formatStyle(
"logical",
target = 'row',
backgroundColor = styleEqual(c(1, 0), c('green', 'red'))
)
})
}
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3229 次 |
| 最近记录: |