从rshiny仪表板侧栏菜单中删除已选择的选项

时间:2018-01-30 23:35:13

标签: r shiny

我正在构建一个闪亮的仪表板,让我可以比较两支NBA球队互相比赛时的数据。以下是我的dashboardSidebar,它允许我选择2个团队。因为它是第二个菜单,所以默认为sort中的第二个项目(unique(season $ team)),这是团队列表。我想这样做,无论选择哪支队伍作为team1,都可以简单地从team2的选项中删除。我怎么能这样做?

  dashboardSidebar(selectInput("team1", "Team 1:", sort(unique(season$team))),         
                   selectInput("team2", "Team 2:",
                   sort(unique(season$team)),selected = sort(unique(season$team))[2]))

1 个答案:

答案 0 :(得分:0)

使用updateSelectInput。由于我无法访问您的数据帧,因此我使用了虹膜数据帧。更改数据框的光圈。

将其放入您的用户界面

selectInput("team1", "Team 1:", sort(unique(iris$Species))),
selectInput("team2", "Team 1:", "")

并将其放入您的服务器

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


  outVar = reactive({
     df = iris[iris$Species != input$team1,]
     df$Species
  })
   observe({
        updateSelectInput(session, "team2",
        choices = outVar()
    )})
}