Shiny仪表板中的条件面板

Posted

技术标签:

【中文标题】Shiny仪表板中的条件面板【英文标题】:Conditional panel in Shiny dashboard 【发布时间】:2015-07-07 16:01:31 【问题描述】:

我对闪亮仪表板中的条件面板有疑问。是否有可能在sidebarMenu 中以menuItem 的条件制作条件面板?我的目标是在单击菜单选项卡title2 后获得额外的selectInput(但对于title1 选项卡应该保持不可见)。

我正在做类似以下的事情

ui <- dashboardPage(
    dashboardHeader(title = "Basic Dashboard"),
    dashboardSidebar(
        sidebarMenu(
            menuItem("tab title1", tabName = "name1", icon = icon("th")),
            menuItem("tab title2", tabName =  "name2", icon = icon("th"))
         ),
        conditionalPanel(
            condition = "input.tabName == 'name2'",
            selectInput("period", "Period:", 
                        choices = list("Years" = 1, "Months" = 2))
        )
        ),
    dashboardBody())

在标准shiny 中,可以通过将, value=1 添加到选项卡来完成,但在这里它不起作用。有谁知道任何解决方案? 在此先感谢:)

【问题讨论】:

【参考方案1】:

sidebarMenu 中添加一个额外的参数id 可以解决问题。

ui <- dashboardPage(
dashboardHeader(title = "Basic Dashboard"),
dashboardSidebar(
    sidebarMenu(id="menu1",
        menuItem("tab title1", tabName = "name1", icon = icon("th")),
        menuItem("tab title2", tabName =  "name2", icon = icon("th"))
     ),
    conditionalPanel(
        condition = "input.menu1 == 'name2'",
        selectInput("period", "Period:", 
                    choices = list("Years" = 1, "Months" = 2))
    )
    ),
dashboardBody())

【讨论】:

以上是关于Shiny仪表板中的条件面板的主要内容,如果未能解决你的问题,请参考以下文章

闪亮仪表板中的多个条件

如何在Shiny app中的仪表板主体中输出数据库表?

R闪亮仪表板中标题中的主页按钮

选项卡面板的动态高度调整不适用于信息框

R Shiny:使用 Leaflet Map Click 更新多个相关下拉菜单

Shiny - Selectizeinput 更新