2013-06-20 28 views
21

Ví dụ dưới đây vẽ 4 nhóm trong 4 ô với nhau. Nhưng vấn đề là họ dường như đang cư trú trong một mạng lưới duy nhất. Có thể kiểm soát kích thước của các biểu đồ trong đầu ra sáng bóng không? (tức là để không có thanh cuộn bên phải khi ứng dụng được chạy) Tôi đã cố gắng kiểm soát chiều cao và chiều rộng, nhưng điều đó dường như chỉ kiểm soát hình ảnh bên trong lưới điện ... bất kỳ ý tưởng nào?Phân bổ không gian biểu đồ sáng bóng

nhờ

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) 


}) 

Trả lời

29

plotOutput có chiều cao và chiều rộng thông số cũng; chiều rộng mặc định là "100%" (nghĩa là 100% chiều rộng có sẵn trong vùng chứa) và chiều cao mặc định là "400px" (400 pixel). Thử thử nghiệm với các giá trị này, thay đổi chúng thành "auto" hoặc "1000px".

renderPlot Tham số chiều cao và chiều rộng kiểm soát kích thước của tệp hình ảnh được tạo theo pixel, nhưng không ảnh hưởng trực tiếp đến kích thước được hiển thị trong trang web. Giá trị mặc định của chúng là cả hai "auto", có nghĩa là, phát hiện và sử dụng chiều rộng/chiều cao của plotOutput tương ứng. Vì vậy, khi bạn đã đặt chiều rộng và chiều cao trên plotOutput, bạn thường không cần chiều rộng và chiều cao được đặt trên 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

Tôi có thể làm gì trong trường hợp tôi có 'navbarPage' kiểm soát đầu ra và do đó tôi không có' plotOutput' để thao tác? http://stackoverflow.com/questions/30179621/how-can-i-display-my-plot-without-toolbars-in-shiny –

+0

Cảm ơn Joe, tự động dường như không hoạt động tốt ngay bây giờ. sử dụng 'plotOutput (" screenplot ", width =" 100% ", height =" auto ")' và không có biểu đồ nào hiển thị trong Chrome. Tôi thấy trong trợ giúp, trạng thái * "Lưu ý rằng, với chiều cao, sử dụng" tự động "hoặc" 100% "thường sẽ không hoạt động như mong đợi, vì độ cao được tính bằng HTML/CSS" * Bạn có thể giới thiệu gì ngoài độ cao cố định ? Cảm ơn – micstr

Các vấn đề liên quan