Автоплот в сиянии с неработающим входом Select

Я пытаюсь создать автоплот, который будет отображать график в зависимости от того, какую переменную выбирает пользователь, но он просто отображается как прямая линия, даже если имя на оси Y меняется в зависимости от того, что выбирает пользователь. Вот базовая версия кода:

      library(shiny)
library(fpp3)
ui <- fluidPage(
  selectInput("select", "Choose variable", choices = names(aus_production)),
  plotOutput("plot")
)

server <- function(input,output){
  
  output$plot <- renderPlot({
   aus_production %>% autoplot(input$select) 
  })
  
}

shinyApp(ui = ui,server = server)

1 ответ

Вы звоните ?autoplot.tbl_ts и этот метод требует выражения для переменной, а не строки, которая input$selectвозвращается. Вместо этого вы можете использовать .data местоимение

      server <- function(input,output){
  
  output$plot <- renderPlot({
   aus_production %>% autoplot(.data[[input$select]]) 
  })
  
}
Другие вопросы по тегам