新手在第一款Shiny App上需要一些帮助。 我想过滤几个国家并绘制一个简单的折线图依赖于此。但是我收到错误:“eval错误:长度不正确(0),期待:110堆栈跟踪(最里面的第一个)”
这是代码。谢谢你的帮助:)
> shinyUI(fluidPage(
> titlePanel("Die Selbstmordraten einiger OECD-Staaten"),
> sidebarLayout(
> sidebarPanel(
> checkboxGroupInput("land", "Land auswählen", choices = c ("Deutschland", "Griechenland", "Ungarn", "Litauen","Luxemburg"))
> ),
> mainPanel(
> plotOutput("plot")
> ))))
library(shiny)
library(ggplot2)
library(dplyr)
shinyServer(function(input, output, session) {
filter1<-reactive({
data%>%
filter(Land == input$landInput)
})
output$plot<-renderPlot({
ggplot(filter(), aes(Jahr, Rate, group=Land, colour=Land))+
geom_line(size=.5)+geom_point()+
theme(legend.title=element_blank())
})
})
答案 0 :(得分:2)
对我来说错误是
incorrect length (0), expecting: 6132
我发现这是由于输入变量和过滤器名称不匹配造成的。我使用的输入变量都是小例子,但在dplyr过滤器中,第一个字母是大写字母。
答案 1 :(得分:2)
试试这个:
library(shiny)
library(ggplot2)
library(dplyr)
shinyServer(function(input, output, session) {
filter1<-reactive({
req(input$landInput, data)
data%>%
filter(Land == input$landInput)
})
output$plot<-renderPlot({
req(filter())
ggplot(filter(), aes(Jahr, Rate, group=Land, colour=Land))+
geom_line(size=.5)+geom_point()+
theme(legend.title=element_blank())
})
})