在Shiny中用于多参数选择的checkboxGroupInput的替代方案?

问题描述 投票:0回答:2

我有一个闪亮的应用程序,用于分析30年的气候数据。我希望用户能够在30年内选择他们想要多年的时间来相互叠加。显然,可以使用checkboxGroupInput,但是,在屏幕上显示30个复选框在视觉上并不令人满意。

是否有替代方案(例如下拉“多选”)?

r shiny
2个回答
1
投票

简单的替代方案是selectInputmultiple = TRUE。如果您不介意使用外部包,bwc的答案就派上用场了。请参阅以下演示:

library(shiny)
library(shinyWidgets)

ui <- fluidPage(
  sidebarLayout(
    sidebarPanel(selectInput("choiceSelectize", "Choose one or more:", choices = 1:10, multiple = TRUE),
                 pickerInput("choicePicker", "Choose one or more:", choices = 1:10, multiple = TRUE)),
    mainPanel("Plain shiny Select Input:", verbatimTextOutput("outSelectize"),
              "ShinyWidgets Picker Input:", verbatimTextOutput("outPicker"))
  )
)

server <- function(input, output) {

  output$outSelectize <- renderPrint({
    input$choiceSelectize
  })

  output$outPicker <- renderPrint({
    input$choicePicker
  })
}

shinyApp(ui, server)

enter image description here


0
投票

看起来像shinyWidgets包中的pickerInput()或checkboxGroupButtons可以解决这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.