我正在尝试按国家显示按年份显示的进出口。我有一个dateRangeInput,它可以选择年份。 但是,我不知道如何过滤输入。
我尝试过
df2 <- df[as.Date(df$Year) > input$dateRange[1] &
as.Date(df$Year) < input$dateRange[2],]
这是在我的用户界面中
dateRangeInput("dateRange", label = 'Date Range', format = "yyyy-mm-dd",
startview = "year", start = '2009-01-01', end='2017-01-01',
min = df$Year[1], max = df$Year[9])
这是服务器部分
output$retail = renderPlotly({
df1 <- reactive({
filter(df, between(df$Year ,input$daterange[1], input$daterange[2]))
})
ggplot(df1(), aes(x = Year)) +
geom_line(aes(y = Export.TOTAL), color = "#FF7954") +
geom_line(aes(y = Import.TOTAL), color= "#3639e2") +
scale_fill_manual(values = c("#FF5733"), name = "Type")+
labs(title = "Balance of Import/Export", y =" " ) +
theme_minimal() +
scale_x_continuous(breaks = seq(2009,2017)) +
)
})
我希望有一个图表显示所选日期之间的导入/导出结果。
答案 0 :(得分:0)
从这个问题开始,https://github.com/tidyverse/dplyr/issues/1639,between()
需要数字值。看来,如果将as.Date()
包裹在值周围,它应该可以工作。