2015-10-18 45 views
4

我生成兩個圖。在閃亮的面板上繪製兩個圖形,一個在另一個下面,

現在他們表現出了兩種不同的面板(標籤)

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

爲ggplot2圖你可以做'grid.arrange(gplot,gplot,ncol = 1)'。對於基地情節,你可以做'par(mfrow = c(2,1));情節(...);情節(…); par(mfrow = c(1,1))' – hrbrmstr

+0

@hrbrmstr,這也工作。 –

回答

7

你可以用它們在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")) 
     )) 
相關問題