美文网首页
使用nCov2019包可视化新冠肺炎疫情

使用nCov2019包可视化新冠肺炎疫情

作者: 你猜我菜不菜 | 来源:发表于2020-02-25 11:30 被阅读0次

    从今年1月24号县城封城到现在已经整整一个月了,在家憋得难受,小区不让进出,连小区楼下也不让溜达了,就想出去走走,哎,还是不跟国家添堵了,坚持就是胜利。最近Y叔发布了一个R包nCov2019可以爬取腾讯网上的疫情数据,然后可视化疫情情况,今天来学习一下这个包,调节一下情绪。


    1. nCov2019包的安装

    > remotes::install_git('https://gitee.com/GuangchuangYu/nCov2019')
    
    remotes::install_github("GuangchuangYu/nCov2019")这个方法也可以,但我没成功,在家网真不行。

    2. 疫情数据的载入

    #载入数据
    > library(nCov2019)
    > x = load_nCov2019()
    > x
    nCov2019 historical data 
    last update: 2020-02-23 
    > head(x[])
            time province   city cum_confirm cum_heal cum_dead suspected
    1 2020-01-25     广西   梧州           1        0        0         0
    2 2020-01-25     湖北 恩施州          11        0        0         0
    3 2020-01-25     广东   韶关           3        0        0         0
    4 2020-01-25     重庆 合川区           2        0        0         0
    5 2020-01-25     重庆 璧山区           2        0        0         0
    6 2020-01-25     重庆 涪陵区           1        0        0         0
    

    3. 全国疫情情况

    #本地安装github上的中国地图包chinamap,在github上手动下载后解压,然后运行install.packages()命令
    > install.packages("C:/Users/Administrator/Documents/R_work/chinamap-master",repos=NULL,type="source")
    > require(chinamap)
    Loading required package: chinamap
    > cn = get_map_china()
    Loading required package: sp
    Regions defined for each Polygons
    > x = get_nCov2019()
    > plot(x, region='china', chinamap=cn,continuous_scale=FALSE,palette='Blues')
    Warning: Ignoring unknown aesthetics: x, y
    

    全国疫情情况

    4. 各省市疫情情况

    4.1宜昌累计确诊人数和死亡人数
    > all = load_nCov2019()
    > yc = subset(all['湖北',], city == '宜昌')
    > yc
                time province city cum_confirm cum_heal cum_dead suspected
    189   2020-01-25     湖北 宜昌           1        0        1         0
    421   2020-01-26     湖北 宜昌          20        0        1         0
    536   2020-01-28     湖北 宜昌          51        0        1         0
    908   2020-01-29     湖北 宜昌          63        0        1         0
    1067  2020-01-30     湖北 宜昌         117        0        1         0
    1529  2020-01-31     湖北 宜昌         167        0        1         0
    1897  2020-02-01     湖北 宜昌         276        0        1         0
    2416  2020-02-02     湖北 宜昌         353        0        1         0
    2924  2020-02-03     湖北 宜昌         392        2        1         0
    3169  2020-02-04     湖北 宜昌         452        2        3         0
    3477  2020-02-05     湖北 宜昌         496        9        4         0
    3975  2020-02-06     湖北 宜昌         563        9        6         0
    4283  2020-02-07     湖北 宜昌         610       15        7         0
    4738  2020-02-08     湖北 宜昌         633       25        8         0
    5143  2020-02-09     湖北 宜昌         711       36        8         0
    5510  2020-02-10     湖北 宜昌         749       43        8         0
    6080  2020-02-11     湖北 宜昌         772       52        8         0
    6411  2020-02-12     湖北 宜昌         784       62        8         0
    6979  2020-02-13     湖北 宜昌         810       72       11         0
    7253  2020-02-14     湖北 宜昌         877       82       13         0
    7677  2020-02-15     湖北 宜昌         906       92       15         0
    8098  2020-02-16     湖北 宜昌         901      140       21         0
    8399  2020-02-17     湖北 宜昌         895      156       24         0
    9088  2020-02-18     湖北 宜昌         904      186       24         0
    9514  2020-02-19     湖北 宜昌         907      208       25         0
    9668  2020-02-20     湖北 宜昌         891      231       27         0
    10093 2020-02-21     湖北 宜昌         895      250       28         0
    10518 2020-02-22     湖北 宜昌         914      273       29         0
    10944 2020-02-23     湖北 宜昌         917      289       29         0
    
    > library(ggplot2)
    > colors <- c("cum_confirm" = "blue", "cum_dead" = "red")
    > p <- ggplot(yc,aes(x = time)) + 
      geom_line(yc, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1) +
      geom_point(yc, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1.5) +
      geom_line(yc, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1) +
      geom_point(yc, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1.5) +
      labs(y = "人数", x = "时间",  title = "新冠肺炎疫情(宜昌)", 
           color = "")  +
      scale_color_manual(labels = c("累计确诊", "累计死亡"),values = colors) +
      theme_bw() + theme(plot.title = element_text(size = 16,hjust = 0.5),
                         legend.position = c(0,1),legend.justification = c(0,1),
                         legend.text = element_text(size=12),
                         legend.background = element_blank())
    > p 
    
    宜昌疫情
    4.2 武汉累计确诊人数和死亡人数
    > wh = subset(all['湖北',], city == '武汉')
    > wh
                time province city cum_confirm cum_heal cum_dead suspected
    167   2020-01-25     湖北 武汉         572       32       38         0
    356   2020-01-26     湖北 武汉         618       40       45         0
    532   2020-01-28     湖北 武汉        1590       47       85         0
    881   2020-01-29     湖北 武汉        1905       54      104         0
    1058  2020-01-30     湖北 武汉        2261       54      129         0
    1458  2020-01-31     湖北 武汉        2639      103      159         0
    1891  2020-02-01     湖北 武汉        3215      106      192         0
    2507  2020-02-02     湖北 武汉        4109      175      224         0
    2932  2020-02-03     湖北 武汉        5142      228      265         0
    3160  2020-02-04     湖北 武汉        6384      306      313         0
    3683  2020-02-05     湖北 武汉        8351      374      362         0
    3979  2020-02-06     湖北 武汉       10117      455      414         0
    4296  2020-02-07     湖北 武汉       11618      542      478         0
    4698  2020-02-08     湖北 武汉       13603      747      545         0
    5423  2020-02-09     湖北 武汉       14982      878      608         0
    5551  2020-02-10     湖北 武汉       16902     1046      681         0
    6112  2020-02-11     湖北 武汉       18454     1242      748         0
    6277  2020-02-12     湖北 武汉       19558     1380      820         0
    6811  2020-02-13     湖北 武汉       32994     1923     1036         0
    7255  2020-02-14     湖北 武汉       35991     2023     1016         0
    7910  2020-02-15     湖北 武汉       37914     2535     1123         0
    8078  2020-02-16     湖北 武汉       39462     2925     1233         0
    8392  2020-02-17     湖北 武汉       41152     3507     1309         0
    9097  2020-02-18     湖北 武汉       42752     4253     1381         0
    9523  2020-02-19     湖北 武汉       44412     5040     1497         0
    9661  2020-02-20     湖北 武汉       45027     5598     1585         0
    10086 2020-02-21     湖北 武汉       45346     6281     1684         0
    10511 2020-02-22     湖北 武汉       45660     7292     1774         0
    10937 2020-02-23     湖北 武汉       46201     8189     1856         0
    

    武汉疫情

    4.3 浙江累计确诊人数和死亡人数
    hz = subset(all['浙江',], city == '杭州')
    hz
    p2 <- ggplot(wh,aes(x = time)) + 
      geom_line(hz, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1) +
      geom_point(hz, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1.5) +
      geom_line(hz, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1) +
      geom_point(hz, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1.5) +
      labs(y = "人数", x = "时间",  title = "新冠肺炎疫情(杭州)", 
           color = "")  +
      scale_color_manual(labels = c("累计确诊", "累计死亡"),values = colors) +
      theme_bw() + theme(plot.title = element_text(size = 16,hjust = 0.5),
                         legend.position = c(0,1),legend.justification = c(0,1),
                         legend.text = element_text(size=12),
                         legend.background = element_blank())
    

    杭州疫情

    武汉的疫情依然没有显著好转,宜昌和杭州这两地已经稳定,应该把治愈出院人数减出去,看确诊的存量变化,下次再研究吧!

    今天2月25号,仔细看看宜昌疫情。
    library(nCov2019)
    all = load_nCov2019()
    yc = subset(all['湖北',], city == '宜昌')
    yc
    library(ggplot2)
    colors <- c("cum_confirm" = "blue", "cum_dead" = "red", 
                "cum_heal" ="yellow","cum_stock" = "green" )
    p <- ggplot(yc,aes(x = time)) + 
      geom_line(yc, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1) +
      geom_point(yc, mapping = aes(y = cum_confirm,color = "cum_confirm"),size = 1.5) +
      geom_line(yc, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1) +
      geom_point(yc, mapping = aes(y = cum_dead,color = "cum_dead"),size = 1.5) +
      geom_line(yc, mapping = aes(y = cum_heal,color = "cum_heal"),size = 1) +
      geom_point(yc, mapping = aes(y = cum_heal,color = "cum_heal"),size = 1.5) +
      geom_line(yc, mapping = aes(y = (cum_confirm-cum_heal),color = "cum_stock"),size = 1) +
      geom_point(yc, mapping = aes(y = (cum_confirm-cum_heal),color = "cum_stock"),size = 1.5) +
      labs(y = "人数", x = "时间",  title = "新冠肺炎疫情(宜昌)", 
           color = "")  +
      scale_color_manual(labels = c("累计确诊", "累计死亡", "累计出院","确诊未出院"),values = colors) +
      theme_bw() + theme(plot.title = element_text(size = 16,hjust = 0.5),
                         legend.position = c(0,1),legend.justification = c(0,1),
                         legend.text = element_text(size=12),
                         legend.background = element_blank())
    p 
    
    宜昌疫情

    相关文章

      网友评论

          本文标题:使用nCov2019包可视化新冠肺炎疫情

          本文链接:https://www.haomeiwen.com/subject/dfuiactx.html