r语言 - 动态UI闪亮实现



我有以下数据框架:

a<-rep(c("cat","dog","bird"),each=5)
b<-letters[1:length(a)]
c<-data.frame("pet"=a,"level"=b)

我想做一个闪亮的应用程序,有一个下拉菜单选择pet,然后有一个动态的复选框,出现在有level对应值的复选框选项下面。

所以,选择cat会出现一个a,b,c,d,e的复选框组,然后选择dog会改变这些复选框,只显示f,g,h,i,j,等等。

Thanks for the help

你可以在观察者内部使用updateCheckboxGroupInput函数(?observe observe函数"observe" input$pet和并将在input$pet更改时自动重新执行,然后更新复选框组)。

例如:

a<-rep(c("cat","dog","bird"),each=5)
b<-letters[1:length(a)]
c<-data.frame("pet"=a,"level"=b)
runApp(list(
  ui = pageWithSidebar(
    headerPanel("Example"),
    sidebarPanel(
      selectInput("pet", "Select a pet", choices = levels(c$pet), selected = levels(c$pet)[1]),
      tags$hr(),
      checkboxGroupInput('levels', 'Levels', choices = c$level[c$pet == levels(c$pet)[1]])
    ),
    mainPanel()
  ),
  server = function(input, output, session) {
    observe({
      pet <- input$pet
      updateCheckboxGroupInput(session, "levels", choices = c$level[c$pet == pet])
    })
  }
))

相关内容

  • 没有找到相关文章

最新更新