繁体   English   中英

R闪亮仪表板中的反应式下拉菜单

[英]Reactive dropdown menu in R shiny dashboard

这里是新手。 我正在创建一个仪表板,并且具有不同的类别和子类别。 我想做的事情如下:

当屏幕加载时,我希望所有类别和子类别均可供选择,但是如果我选择类别“ 1”,则仅“ sub1”和“ sub2”应可供选择。 就像按类别过滤一样。 我将如何在服务器文件中实现此功能? 我的代码的简要示例如下:(服务器是sudo代码)

UI -->     
    dashboardSidebar(
        sidebarMenu(
          menuItem("CSF2", tabName = "CSF2", icon=icon("bar-chart")),
            selectInput("category", "Select a category", c("1", "2"),
            selectInput("subcategory", "Select a subcategory",       c("sub1", "sub2", "sub3" "sub4"),
        )),


server--->
shinyServer(function(input,output){
    if (category_selected == 1){subcategoryOptions= c(sub1,sub2)}
    if (category_selected == 2){subcategoryOptions= c(sub3,sub4)}

}
library(shiny)
library(shinydashboard)

UI <- dashboardSidebar(
  sidebarMenu(
    menuItem("CSF2", tabName = "CSF2", icon = icon("bar-chart")),
    selectInput("category", "Select a category", c("1", "2")),
    selectInput("subcategory", "Select a subcategory",       
                c("sub1", "sub2", "sub3", "sub4"))
  )
)


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

  observe({
    updateSelectInput(
      session, "subcategory", "Select a subcategory",
      choices = switch(input$category,
        "1" = c("sub1", "sub2"),
        "2" = c("sub3", "sub4"))
    )
  })

}

shinyApp(UI, server)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM