Shiny的tabsetPanel不在多个选项卡中显示绘图

Pat*_*bug 4 plot tabs r shiny

我试图tabPaneltabsetPanelin中使用多个控件Shiny.让我们说我使用以下代码只从一个选项卡开始:

mainPanel(
    tabsetPanel(
    tabPanel("Plot",plotOutput("distPlot"))
    )
Run Code Online (Sandbox Code Playgroud)

代码运行正常并在选项卡中显示绘图.

但是,当我引入另一个标签只是为了测试标签时,两个标签都会停止显示任何图表.我使用以下代码:

mainPanel(
    tabsetPanel(
    tabPanel("Plot",plotOutput("distPlot")),
    tabPanel("Plot",plotOutput("distPlot"))
    )
Run Code Online (Sandbox Code Playgroud)

请注意,我试图在两个标签中显示相同的图表,以测试标签是否有效.我得到的是两个空白标签(如果我只使用一个标签,则图表显示正确).

请有人帮我解决这个问题吗?

Bea*_*eld 8

你分配"distPlot"plotOutput的参数outputId."ID"表示此值必须在整个闪亮的应用程序中是唯一的.您可以将相同的绘图分配给两个不同的plotOutputs:

runApp( list(

  server = function(input, output) {
    df <- data.frame( x = rnorm(10), y = rnorm(10) )
    output$distPlot1 <- renderPlot({ plot( df, x ~ y ) })
    output$distPlot2 <- renderPlot({ plot( df, x ~ y ) })
  },

  ui = fluidPage( mainPanel(
    tabsetPanel(
      tabPanel( "Plot", plotOutput("distPlot1") ),
      tabPanel( "Plot", plotOutput("distPlot2") )
    )
  ))
))
Run Code Online (Sandbox Code Playgroud)