我想开发一个应用程序,其布局类似于Shiny gallery中的Radiant (https://shiny.rstudio.com/gallery/radiant.html)。 在该应用程序中,sidebarPanel会针对mainPanel中存在的每个tabPanel进行更改。如下图所示,我希望sidebarPanel(现在为空)根据用户选择的选项卡(Metadata、Raw Data、QC Data)进行更改。请问有人知道如何实现这一点,或者能否指导我在Radiant应用程序中找到ui代码的位置?
编辑:在接收到下面的答案后,我将代码进行了编辑,使其看起来像这样,而不是将sidebar放在一个新的函数中。 但它还没有起作用。这不应该吗?还有什么问题吗?
ui <- navbarPage(title = "SD Mesonet Quality Control", id = "navbarPage",
tabPanel(title = 'Data',
sidebarLayout(
sidebarPanel(
conditionalPanel(condition="input.tabselected == 1",
actionButton('bt','button Tab 1')
),
conditionalPanel(condition="input.tabselected == 2",
selectInput('select','choice',choices=c("A","B"))
)
),
mainPanel(
tabsetPanel(type = "tabs", id = "tabselected",
tabPanel("Instrumentation", value = 1, plotOutput("plot")),
tabPanel("Metadata", value = 2, plotOutput("plot"))
)
)
),
)
)
server <- function(input,output){
}
shinyApp(ui,server)
plotOutput('plot')
...只需将其中一个输出重命名为plot2
,然后再试一次即可 ;) - Waldi