R Markdown не может найти объект

#r #ggplot2 #shiny #r-markdown

#r #ggplot2 #блестящий #r-markdown

Вопрос:

Я хочу вывести блестящее приложение в виде отчета в формате PDF. Но R Markdown выдает следующую ошибку «Предупреждение: ошибка при оценке: объект ‘plot2’ не найден».

График работает в Shiny, я не слишком знаком с Markdown, и я очень расстраиваюсь, так как чувствую, что перепробовал немало потенциальных решений. Что я делаю не так?

Блестящий пользовательский интерфейс

 library(ggplot2)
library(tidyr)
library(DBI)
library(RODBCext)
library(shiny)
library(knitr)
library(kableExtra)

ui <- fluidPage(
  pageWithSidebar(
    
    headerPanel(""),
    sidebarPanel(
      textInput("Table", ""),
      downloadButton("downloadData", "Download"),
      submitButton(text="Submit"),

    mainPanel(
              tabsetPanel(
                tabPanel("Data", tableOutput("tTable"))
              ), 
              
              tabsetPanel(
                tabPanel("Graph", plotOutput("plot1")
    )
  )
)

  

Сервер Shiney

 server <- function(input, output, session)    
{ 
  
  SQLData <- reactive({
   #SQL Query
  })

output$tTable <- renderTable(SQLData()) 

output$plot1 <- renderPlot({
  da <- gather(SQLData(), key=Result, 'Control', 'Sample'
  )
  da2 <- data.frame(da)
  ggplot(da2,aes(x=Result,y=Control, color=Result)) geom_point(size = 5)   scale_y_continuous(limits = c(80, 120))  labs(y="", x = "")})


output$downloadData <- downloadHandler(
  filename = "report.pdf",
  content = function(file) 
  { params <- list(table = SQLData(),
                   plot2 = {
                     da <- gather(SQLData(), key=Result, 'Control', 'Sample'
                     )
                    da2 <- data.frame(da)
                    ggplot(da2,aes(x=Result,y=Control, color=Result)) geom_point(size = 5)   scale_y_continuous(limits = c(80, 120))  labs(y="", x = "")})}
  )
  
  rmarkdown::render(input = "Report.Rmd", 
                    output_file = file,
                    params = params,
                    envir = new.env(parent = globalenv())
      )
    }
  )
}

shinyApp(ui = ui, server = server)
  

Отчет R Markdown

 ---
title: "Report"
output: pdf_document
header-includes:
- usepackage{float}
- usepackage{booktabs}
- usepackage{makecell}
params:
  table: NA
  plot2: NA
---

```{r echo = FALSE, eval = TRUE}
kable(params$table, format="latex", booktabs=TRUE) %>% 
  kable_styling(latex_options="scale_down")
  
 ```{r echo = FALSE, eval = TRUE}
library(ggplot2)
print(plot2)
  

Комментарии:

1. print(params$plot2) ?

2. Да, я идиот. Большое спасибо!