更改图形大小(Rstudio、Rmarkdown、Shiny)

Changing figure size (Rstudio, Rmarkdown, Shiny)

我正在尝试使用 Rstuidio 在 R Markdown HDML 输出中输出图形。目前图表太大,所以它创建了一个滚动条让你看到整个事情,我不喜欢。我想在不减小图形大小的情况下删除滚动条。

不幸的是,shiny(或者至少我使用 shiny 的方式)似乎与执行此操作的常规方法有问题。在块设置中设置 fig.height = 40 不会执行任何操作,增加 plotOutput 中的高度会增加图形高度而不删除滚动条。我没有标准 Rscript 的这个问题,所以它绝对是一个 Rmarkdown 的东西。

如有任何帮助,我们将不胜感激。

library(tidyverse)
library(shiny)

server <- function(input, output, session) {
  
  trends <- reactive({
    req(input$sel_year)
    mpg %>%
    filter(year %in% input$sel_year)
    
  })
      
  output$plot <- renderPlot({
    ggplot(
      data = trends(),
      mapping = aes(x = trans)
    ) + 
      geom_bar()
  })
}

ui <- fluidPage(
  selectInput(
    inputId = "sel_year",
    label = "Choose Year",
    list("1999", "2008")
  ),
  plotOutput("plot")
)

shinyApp(ui = ui, server = server)

这就是我在 Rmarkdown 中使用 Shiny 的方式。这是一个。您可以使用 options 参数调整闪亮的 shinyApp() 函数。

WITHOUT FIX(通知滚动条)

使用下面的代码

---
title: "Shiny in Rmarkdown"
output: html_document
runtime: shiny
---

```{r echo = FALSE, warning=FALSE, message=FALSE }
library(tidyverse)
library(shiny)

server <- function(input, output, session) {
    
    trends <- reactive({
        req(input$sel_year)
        mpg %>%
            filter(year %in% input$sel_year)
        
    })
    
    output$plot <- renderPlot({
        ggplot(
            data = trends(),
            mapping = aes(x = trans)
        ) + 
            geom_bar()
    })
}

ui <- fluidPage(
    selectInput(
        inputId = "sel_year",
        label = "Choose Year",
        list("1999", "2008")
    ),
    plotOutput("plot")
)

shinyApp(ui = ui, server = server, options = list(height = 750))
```