gpt4 book ai didi

css - 如何根据条件为 Shiny renderDataTable() 中的整个单元格着色

转载 作者:太空宇宙 更新时间:2023-11-03 22:26:18 24 4
gpt4 key购买 nike

我发现很难找到一种方法来使用涉及另一列 B 的条件为列 A 中的单元格着色。

我发现包 (DT) 在单元格中形成了完美的背景,但无法根据涉及其他列的公式进行着色。

包(可格式化)执行涉及两列的条件,如果我将值更改为

style = ~ style(background = ifelse(S2 >= 50, "lightgreen", "red"))

背景应用于值而不是单元格本身,这不是我想要的。

有没有办法做到这一点,谢谢

最佳答案

包裹tableHTML可能是您正在寻找的东西

你可以在这里看到很多关于你可以用条件格式做什么的例子: conditional formatting

你可以用 shiny 试试这个小例子,看看你能用它做什么:

library(shiny)
library(tableHTML)

ui <- shinyUI(fluidPage(
titlePanel(title = "tableHTML"),

sidebarLayout(
sidebarPanel(h3("Select a Dataset:"),
# input
selectInput("in_name", "Dataset:", "iris",''),
actionButton("in_click", "Submit")),

mainPanel(h3("Main Panel"), h4("Output"),
# output
htmlOutput("out_name"))
)))

server <- shinyServer(
function(input, output){
# # eventReactive
observeEvent(input$in_click, {df <- eval(parse(text=input$in_name))

output$out_name <- render_tableHTML({
# here is the tableHTML part
tableHTML(df[c(1:5, 51:55, 101:105), 1:4],
rownames = FALSE,
headers = rep(c('Length', 'Width'), 2),
second_headers = list(c(1, 2, 2), c('Species', 'Sepal', 'Petal'))) %>%
add_css_conditional_column('colour_rank',
colour_rank_theme = 'White-Green',
columns = 1:2,
same_scale = FALSE) %>%
add_css_conditional_column('colour_rank',
colour_rank_theme = 'White-Blue',
columns = 3:4,
same_scale = FALSE)})
})
})

shinyApp(ui, server)

关于css - 如何根据条件为 Shiny renderDataTable() 中的整个单元格着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50965110/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com