2016-06-12 213 views
1

我試圖按比例縮小plotOutput閃亮R.閃亮R標下來plotOutput

我有這樣的情節: enter image description here

從這個代碼:

#In ui: 
fluidRow(
     column(width = 12, 
      h4("Diagrama Persistencia"), 
      plotOutput("Diagrama") 
     ) 
    ) 

#In server 
output$Diagrama <- renderPlot({ 
     F_PlotDiag(Diag = isolate(values$data), tipoPlot = input$radioPlot, tamEjeNom = input$sliderTamEjeNom) 
     }, height = input$sliderHeight, width = input$sliderWidth) 

的通知高度和寬度參數。這是有效的,因爲所有的都在一個observeEvent上下文中。

正如你所看到的,孔圖不適合在屏幕上。與降低高度和寬度的問題是,它看起來像這樣:

enter image description here

但實際上,如果我點擊右鍵,保存第一個圖像,它看起來不像第二圖像細膩: enter image description here

有沒有辦法通過縮小瀏覽器來顯示整個圖表?這樣我就可以看到它,就好像我下載了圖像一樣。

我真的不知道很多關於CSS,所以我真的不能提供任何邏輯的嘗試,但是這是我試過了我的HTML:

enter image description here

tags$style(type="text/css", ".shiny-bound-output { transform: 'scale(.5)' }") 
    tags$style(type="text/css", ".shiny-plot-output { transform: 'scale(.5)' }") 
    tags$style(type="text/css", "#Diagrama { height: 20px }") 

由於沒有成功。

回答

2

由於您沒有提供可重複的示例,請參閱此示例是否可以幫助您。基於https://stackoverflow.com/a/8839678/4190526

關鍵是下面的行,其中發現下div圖像與ID distPlot(即積名ui.R),並限定具有max-height但其他汽車的CSS。

tags$style(HTML("div#distPlot img {width: auto; height: auto; max-width: auto; max-height: 400px;}")), 

的完整代碼

library(shiny) 

ui <- shinyUI(fluidPage(

    tags$style(HTML("div#distPlot img {width: auto; height: auto; max-width: auto; max-height: 400px;}")), 
    titlePanel("Old Faithful Geyser Data"), 
    sidebarLayout(
     sidebarPanel(
     sliderInput("bins", 
        "Number of bins:", 
        min = 1, 
        max = 50, 
        value = 30) 
    ), 
     mainPanel(
     plotOutput("distPlot") 
    ) 
    ) 
)) 

server <- shinyServer(function(input, output) { 

    output$distPlot <- renderPlot({ 
     x <- faithful[, 2] 
     bins <- seq(min(x), max(x), length.out = input$bins + 1) 

     hist(x, breaks = bins, col = 'darkgray', border = 'white') 
    }, width=600, height=1200) 
}) 

shinyApp(ui = ui, server = server) 
+0

最好的,謝謝。 –