繁体   English   中英

使用 3 个变量——date、state_territory 和离散变量制作 R/Shiny/ggplot2 线图

[英]Make R/Shiny/ggplot2 linegraph using 3 variables--date, state_territory, and discrete variable

我的数据框是 tableau_jh_df [显示的前 4 行]:

日期 省_州 number_of_cases
1 2020-01-22 阿拉巴马州 0
2 2020-01-22 阿拉斯加 0
3 2020-01-22 亚利桑那 0

基于用户从 Shiny 控件中选择的 Province_state,我想使用 ggplot2 按周绘制总 number_of_cases 的折线图。 到目前为止,无论选择哪个省州,我得到的都是所有情况。 这是我的代码和图表:

# ui
fluidRow(
        column(3,
               selectInput("state_terr", "Choose a State/Territory:",
                           list("Alabama", "Alaska", "Arizona" [,...etc]  
# server
output$plot <- renderPlot({
    min_date <- as.Date("2020-01-20")
    max_date <- NA
    ggplot(tableau_jh_df, aes(date, number_of_cases, col = input$state_terr,
                              group = 1)) +
    geom_line() +
    labs(x = "Date", y = "Number of Cases") +
    theme(axis.text.x = element_text(angle = 45),
          axis.text.y = element_text(angle = 90))  

按日期分类的案例数

您必须根据所选的州或省过滤数据集。 使用来自dplyr filter试试这个:

ggplot(filter(tableau_jh_df, province_state == input$state_terr), 
       aes(date, number_of_cases, col = input$state_terr, group = 1)) +
    geom_line() +
    labs(x = "Date", y = "Number of Cases") +
    theme(axis.text.x = element_text(angle = 45),
          axis.text.y = element_text(angle = 90))

顺便说一句: col = input$state_terr如果这是您的意图,则对线条的颜色没有影响。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM