У меня есть серия (более 100) сюжетов, которые я хотел бы отобразить в зависимости от того, какое преступление и год выбирает пользователь (реактивный)
Сюжеты уже названы в таком формате: «CrimeDataA01» для нападений в 2001 году, «CrimeDataM02» для убийства в 2002 году и т. Д.
Графики были определены, и код для них вставлен перед shinyServer (функция (ввод, вывод) в файле сервера.
Я пытаюсь заставить Shiny печатать правильный сюжет, в зависимости от того, какое преступление и год выбирает пользователь. Вот мой код server.r:
shinyServer(function(input, output) {
crime2 <- switch(input$select,
"Assault" = "A",
"Burglary" = "B",
"Car Theft" = "MT",
"Grand Larceny" = "G",
"Murder" = "M",
"Rape" = "R",
"Robbery" = "RO")
year2 <- switch(input$Slider,
"2000" = "00",
"2001" = "01",
"2002" = "02",
"2003" = "03",
"2004" = "04",
"2005" = "05",
"2006" = "06",
"2007" = "07",
"2008" = "08",
"2009" = "09",
"2010" = "10",
"2011" = "11",
"2012" = "12",
"2013" = "13",
"2014" = "14",
"2015" = "15")
output$plot <- plot(paste0("CrimeData", crime2, year2))
})
})
Вот мой код ui.R:
library(shiny)
shinyUI(fluidPage(
sidebarLayout( position = "right",
sidebarPanel(
selectInput("select", label = h3("Select Crime"),
choices = list("Assault" = 1, "Burglary" = 2, "Car Theft" = 3, "Grand Larceny" = 4, "Murder" = 5, "Rape" = 6, "Robbery" = 7))
),
mainPanel(
textOutput("text1"),
h1("NYC Crime Over Time", align = "center"),
sliderInput("Slider", "Year", 2000, 2015, 2000),
print(plot)
))))
Я так много с этим напортачил, что больше не знаю, что там, а что нет. Я просто хочу, чтобы он называл правильный сюжет и отображал его
output$plot
вoutput$MyPlot
и используйтеrenderImage()
вместоplot()
. затем изменитеprint(plot)
на plotOutput (MyPlot). См. Пример в?renderImage
- person Brandon Bertelsen   schedule 29.01.2017