web-dev-qa-db-ja.com

光沢のあるパネルに2つのグラフを上下にプロットする

私は2つのグラフを作成しています。

現在、2つの異なるパネル(タブ)に表示されています

ui.r
mainPanel(
      tabsetPanel(
        tabPanel("Summary", dataTableOutput("dis")),
        tabPanel("Plot", plotOutput("plot1")),
        tabPanel("Plot", plotOutput("plot2"))
      )
    )

server.r

output$plot1 <- renderPlot({
    Plot1
  })


output$plot2 <- renderPlot({
    Plot1
 })

現在のように2つの異なるパネルではなく、同じパネルでこれらのグラフを上下に表示するにはどうすればよいのでしょうか。助けてくれてありがとう。

それらをfluidRowでラップするか、同じtabPanel内にリストすることができます。

shinyApp(
    shinyUI(
        fluidPage(
            mainPanel(
                tabsetPanel(
                    tabPanel("Summary", dataTableOutput("dis")),
                    tabPanel("Plot",
                             # fluidRow(...)
                                 plotOutput("plot1"),
                                 plotOutput("plot2")
                             )
                )
            )
        )
    ),
    shinyServer(function(input, output) {
        output$plot1 <- renderPlot({
            plot(1:10, 1:10)
        })

        output$plot2 <- renderPlot({
            plot(1:10 ,10:1)
        })

        output$dis <- renderDataTable({})
    })
)

それらをfluidRowでラップすると、幅などの個々のプロット属性を簡単に制御できます。

tabPanel("Plot",
         fluidRow(
             column(8, plotOutput("plot1")),
             column(12, plotOutput("plot2"))
         ))
12
pickle rick