如何仅使用列表名称创建 selectInput? 不显示列表内容Shiny

问题描述

我有 3 个向量:

colors = c("blue","red","green","yellow","white","black")
numbers = c("1","2","3","4")
things = c("phone","fridge","computer","chair","table","notebook","bag","jacket")

为了将所有这些都放在一个列表中,我将它们加入了一个列表。

list_options = list("colors" = colors,"numbers" = numbers,"things" = things)

我的主要目标是创建一个 Shiny 应用程序,它只有一个带有列表名称(“颜色”、“数字”、“事物”)的 SelectInput。但是,如果您单击其中一个选项,您将能够获得列表中的值,以便以后使用。

例如,如果您选择“事物”,我想查看向量内部的所有变量(电话、冰箱、计算机...)。

有办法吗?现在,通过我的代码,应用程序会显示每个向量的名称及其选项,并为您提供您选择的选项。

image

这就是我希望在应用中看到我的 selectInput 的方式。

image2

但是,正如我所说,我想稍后使用每个向量的内容(为此,在我的示例中,我编写了一个“renderText”)。如果您选择“颜色”,您将看到“蓝色、红色、绿色、黄色...”。

这是我的代码:

colors = c("blue","jacket")
    
list_options = list("colors" = colors,"things" = things)


if (interactive()) {
        
  shinyApp(
    ui = fluidPage(
      selectInput("option","Options:",list_options),textOutput("text")
    ),server = function(input,output) {
      output$text <- renderPrint({
        input$option
      })
    }
  )
}

非常感谢,

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)