我正在尝试构建一个R-shiny仪表板,以显示过去2个小时内每隔15分钟的登录ID数。 用户可以灵活地选择1个或超过1个时间间隔来查看登录次数。
当用户仅选择一个时间间隔时,这可以正常工作。但是对于多个时间间隔存储桶-它显示错误的答案。
获取错误是这样的:
==.default
中的警告(df2 $ time_bucket,input $ input2):
较长的对象长度不是较短的对象长度的倍数
下面是代码:
output$checkbox2 <- renderUI({checkboxGroupInput("input2","Select Time Bucket:", choices = unique(df2$time_bucket), selected = tail(unique(df2$time_bucket),n=1),inline = TRUE)})
datasub2 <- reactive({df2[df2$time_bucket == input$input2,]})
output$test2 <- renderPlot( {barplot((datasub2()%>%group_by(site)%>%summarise(logins=n()))$logins,names.arg =(datasub2()%>%group_by(logins)%>%summarise(logins=n()))$logins, main = 'Number of logins - by site', xlab = "site", ylab = "# of logins", border = "brown", col = "blue")})
我尝试在第2行中使用%in%而不是==并将input $ input2放在列表中,但都抛出错误。
df $ time_bucket没有为input $ input2处理多个值,但我不确定如何更正此问题。