Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
304 views
in Technique[技术] by (71.8m points)

r - Shiny Slider Customized Values

I am trying to set custom values for shiny slider (1,5,10,15,20,25 and 30). I tried step but then the results either (0,5,10,15,20,25,30) or (1,6,11,16,21,26,31). Is there any way yo define custom values for slider? Thanks!

plotpath <- "/Volumes/share-ites-1-$/Projects/Scientifica/Simulations_Scientifica"

ui <- fluidPage(
     titlePanel("LandClim Simulations"),
     sidebarLayout(
          sidebarPanel(
               sliderInput(inputId = "temp", 
                           label = "Temperature increase:", 
                           value = 1, min = 1, max = 2,
                           step = 1, animate = TRUE ),
               sliderInput(inputId = "prec", 
                           label = "Precipitation change:", 
                           value = 0, min = -2, max = 2,
                           step = 1, animate = TRUE ),
               sliderInput(inputId = "decade", 
                           label = "Time (decade):", 
                           value = 1, min = 0, max = 30,
                           step = 5, animate = TRUE )
          ),
          mainPanel(imageOutput("image")) 
     )
)

server <- function(input, output) {
     output$image <- renderImage( deleteFile = FALSE, {
               return(list(
                    src = paste(plotpath,"/Temp",input$temp,"Prec",input$prec,"Dec",input$decade,".png",sep = ""),
                    contentType = "image/png"))
     } ) }

shinyApp(ui = ui, server = server)
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

The shinyWidgets package now solves this for you with a slider that allows custom values. Updated code for your third slider would look like this:

shinyWidgets::sliderTextInput(inputId = "decade", 
  label = "Time (decade):", 
  choices = c(1,5,10,15,20,25,30))

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...