Я пытаюсь построить панель управления Corona. Где Если кто-то выберет штат из выпадающего списка, то на графике будут показаны случаи округа. Например, если кто-то выбирает Гуджарат, в столбчатой диаграмме он показывает районные дела. Кто-то меняет это на Махараштра, Это должно обновляться с районом Махараштры. Но я получаю "ОШИБКА: data
должен быть фреймом данных или другим объектом, который может быть обработан fortify()
, а не объектом S3 с классом реактивнымExpr / реактивным ".
library(shiny)
library(readxl)
library(ggplot2)
library(dplyr)
ui <- fluidPage(
# Application title
titlePanel("Corona Data"),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
selectInput(inputId = "state",
label = "Select the State",
choices = unique(data$`Detected State`))
),
# Show a plot of the generated distribution
mainPanel(
plotOutput("stateplot")
)
)
)
data <- read_excel("Live Data Worldometer.xlsx", sheet = "IndiaData")
data <- data[,c(-2,-1)]
server <- function(session, input, output) {
d1 <- reactive({data %>% group_by(`Detected State`) %>% count(`Detected District`) %>% filter(`Detected State` == input$state)
})
output$stateplot <- renderPlot({
ggplot(d1, aes(d1$`Detected District`, d1$n))+geom_bar(stat = "identity")
})
}
# Run the application
shinyApp(ui = ui, server = server)
Это вывод, который я получаю