2013-06-20 64 views
21

下面的示例將4組4個窗格繪製在一起。但問題是,他們似乎居住在一個網格中。是否有可能控制閃亮輸出圖表的大小? (即,當應用程序運行時右側沒有滾動條)我試圖控制高度和寬度,但似乎只能控制網格內的圖像......任何想法?閃亮的圖表空間分配

感謝

shinyUI(pageWithSidebar(
    headerPanel("Example"), 
    sidebarPanel( 

), 

    mainPanel(
    tabsetPanel(tabPanel("Main",plotOutput("temp")) 

    )#tabsetPanel 

)#mainPane; 

)) 



shinyServer(function(input, output) { 

    output$temp <-renderPlot({ 
    par(mfrow=c(2,2)) 
    plot(1:10) 
    plot(rnorm(10)) 
    plot(rnorm(10)) 
    plot(rnorm(10)) 
    }, height = 1000, width = 1000) 


}) 

回答

29

plotOutput具有高度和寬度參數,以及;寬度默認爲"100%"(意思是其容器中可用寬度的100%),高度默認爲"400px"(400像素)。嘗試嘗試使用這些值,將它們更改爲"auto""1000px"

renderPlot的高度和寬度參數控制生成的圖像文件的大小(以像素爲單位),但不直接影響網頁中呈現的大小。它們的默認值都是"auto",這意味着檢測並使用相應的plotOutput的寬度/高度。所以一旦你設置了plotOutput的寬度和高度,你通常根本不需要在renderPlot上設置寬度和高度。

shinyUI(pageWithSidebar(
    headerPanel("Example"), 
    sidebarPanel( 

), 

    mainPanel(
    tabsetPanel(tabPanel("Main",plotOutput("temp", height = 1000, width = 1000)) 

    )#tabsetPanel 

)#mainPane; 

)) 



shinyServer(function(input, output) { 

    output$temp <-renderPlot({ 
    par(mfrow=c(2,2)) 
    plot(1:10) 
    plot(rnorm(10)) 
    plot(rnorm(10)) 
    plot(rnorm(10)) 
    }) 


}) 
+0

在我有'navbarPage'控制輸出並因此沒有'plotOutput'來操縱的情況下,我該怎麼辦? http://stackoverflow.com/questions/30179621/how-can-i-display-my-plot-without-toolbars-in-shiny –

+0

謝謝喬,汽車現在似乎不工作。使用'plotOutput(「screenplot」,width =「100%」,height =「auto」)',Chrome中沒有圖表顯示。我注意到,「請注意,對於高度,使用」auto「或」100%「通常無法按預期工作,因爲如何使用HTML/CSS計算高度」*您現在除了固定高度?謝謝 – micstr