动态着色的滑块输入

Ing*_*oks 4 r reactive-programming shiny shinydashboard

我有一个与帖子如何着色滑块 (sliderInput)相关的问题?.

是否可以根据所选值使滑块输入更改其颜色?

我想让用户输入 0 到 10 之间的值。但是,有一个推荐的范围,比如 4 到 8。因此,如果用户选择 4 到 8 之间的值,滑块颜色应该是绿色8,但如果选择了超出推荐范围的值,它应该变为橙色(或红色)。

任何帮助实现这一点将不胜感激。

Win*_*ino 6

使用 renderUI,并以您想要的任何方式控制 color() 中的条件

rm(list = ls())
library(shiny)
ui <- fluidPage(

    sliderInput("slider1", "Slider 1",min = 0, max = 10, value =c(4,8), 
                 step = 1),

    uiOutput("abc")

)
server <- function(input, output, session){

    color <- reactive({
       if(input$slider1[1] < 4 || input$slider1[2] > 8 ){
         tags$style(HTML(".js-irs-0 .irs-single, .js-irs-0 .irs-bar-
               edge, .js-irs-0 .irs-bar {background: red}"))
        }else{
          tags$style(HTML(".js-irs-0 .irs-single, .js-irs-0 .irs-bar-
                  edge, .js-irs-0 .irs-bar {background: lightgreen}"))
        }
    })

  output$abc <- renderUI({ 
       color()
  })

}
shinyApp(ui = ui, server=server)
Run Code Online (Sandbox Code Playgroud)