【发布时间】:2021-03-11 20:36:15
【问题描述】:
以下代码允许用户在下拉列表中选择 2 个数据集,并显示所选数据集的所有列。我想添加第二个下拉列表,该下拉列表使用所选第一个下拉列表中的列名称动态转换,以便用户可以选择仅显示单个列。目标是能够将任何数据集添加到第一个下拉列表中,并将其列列在第二个下拉列表中。
library(shiny)
ui <- shinyUI(
fluidPage(
selectInput("dataset", label = NULL, choices = c("mtcars", "rock")),
tableOutput("contents")
)
)
server <- function(input, output, session) {
myData <- reactive({
switch(input$dataset,
"rock" = rock,
"mtcars" = mtcars)
})
output$contents <- renderTable({
myData()
})
observe({
updateSelectInput(session, "myNames",
label = "myNames",
choices = myData()$names,
selected = myData()$names[1])
})
}
shinyApp(ui, server)
【问题讨论】: