基于Flask框架的疫情数据可视化分析文档格式.docx
《基于Flask框架的疫情数据可视化分析文档格式.docx》由会员分享,可在线阅读,更多相关《基于Flask框架的疫情数据可视化分析文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
新冠疫情;
数据可视化;
Flask框架
中图分类号:
TP311.5文献标识码:
A文章编号:
1006-8228(2021)12-60-04
Abstract:
InthecontextofCOVID-19epidemic,opensourceepidemicdatawereobtainedthroughdatacrawlertechnology,anddatasetswereformedafterdataprocessing,andvisualizationtechnologywasusedfordatavisualizationanddataanalysis.Datacrawlingandprocessingmethodswereintroduced,andvisualizationtechnologiessuchasPythonFlaskframeworkwereusedtocompletethevisualizationofepidemicdata,andtheepidemicdataweredisplayedandanalyzedfrommultipleperspectivesandaspects,whichhelpspeoplefullyunderstandthesituationoftheepidemic,thetrendoftheepidemicandthestatusofvaccinationthroughoutthecountry.
Keywords:
datacrawler;
COVID-19;
datavisualization;
Flaskframework
0引言
在2020年初爆發的新型冠状病毒,是一种传染力极强的病毒。
患者在感染了新型冠状病毒后,即使在潜伏期也很容易传染其他人,该病毒会导致人呼吸困难,严重的可能会导致死亡。
时至今日,疫情仍未完全褪去,新冠疫情仍是全世界人民最关注的话题之一,特别是有些国家仍处于爆发期。
因此,疫情的实时数据以及相关新闻报导受到了极大的关注。
本系统利用数据爬虫技术,完成疫情数据以及疫苗接种数据的爬取,经数据处理后形成数据集。
利用数据可视化技术,对数据集进行可视化,实现疫情情况与疫苗接种情况的实时更新。
帮助民众充分了解最新疫情数据、近期疫情发展趋势以及疫苗接种情况。
Flask框架是一个轻量级的、便捷的、Python所提供的Web框架,它更加的灵活、轻便、安全且容易上手,是目前主流的服务器框架,非常适合全队的分工协作式开发,对一个小型团队而言,大大提升了开发的效率[1]。
利用Flask框架,实现前后端的数据交互,其对应的前端JinJa2的模板引擎,也极大地方便了前端的数据调用。
1现有技术研究现状
目前,比较成熟的疫情数据可视化平台有:
丁香园疫情数据可视化平台、腾讯疫情数据可视化平台、XX疫情数据可视化平台。
这三家数据可视化平台内容分析,如图1所示。
现有技术的实现均是通过对大量的疫情数据进行爬取、数据处理,利用可视化技术进行数据的可视化。
本系统集疫情数据与疫苗数据于一个页面中,让用户可以更直观的观察到疫情信息、疫苗信息。
并且,本系统在疫情分布图上做出创新,在全国疫情分布图中点击各省份,直接进入各省份疫情分布图,省略其中间步骤。
用户可以由全国疫情分布图直接进入各省份疫情分布图,了解各省份的疫情分布。
2系统架构与实现流程
2.1系统总体架构
本系统包括疫情数据爬取与处理、数据可视化与分析两个部分。
根据数据需求发起相应的Request请求,接收服务器端的响应[2]。
对返回的数据进行数据处理形成数据集。
最终,对数据集进行可视化。
本系统采用四层架构设计,具体分为资源层、执行层、功能层和表现层。
系统总体架构图,如图2所示。
2.2系统运行流程
本系统流程分为以下几步:
①获取目标网页的URL以及Head信息;
②发送Request请求获取响应数据;
③数据处理;
④数据可视化与数据分析。
系统运行流程图,如图3所示。
3数据爬取与处理
本系统利用数据爬虫技术获取实时疫情数据与疫苗接种情况。
数据来源于丁香园疫情数据可视化平台和腾讯疫情数据可视化平台。
对爬取的数据进行数据清洗,然后转化为Json的数据字典,形成的Json数据字典重要关键键说明,如表1所示。
对爬取的数据经过数据清洗、Json数据字典的转化、数据提取等操作过后,划分为图4的两个数据集:
疫情数据集、疫苗数据集。
利用SQLite数据库,完成数据存储,生成DB文件。
形成单文件操作,利于后期系统的维护[3]。
4数据可视化与数据分析
本系统基于疫情数据集以及疫苗数据集,利用Python语言的Flask框架、ECharts等技术完成数据的可视化。
后端完成数据的提取与封装,利用Ajax技术完成前后端的数据交互[4]。
ECharts技术与Jinja2模板引擎等技术实现数据可视化[5]。
本文采用2021年6月之前的数据。
4.1全国疫情实时追踪
全国疫情实时追踪数据可视化,后端利用SQL语言完成数据的提取,并对提取的数据进行封装[6]。
总数据渲染效果如图5所示,分别以不同颜色对全国疫情数据进行了数据可视化,全国疫情数据清晰明了,用户可以直观的了解到最新的疫情数据。
4.2全国疫情分布图
全国疫情分布图,渲染效果如图6所示,通过颜色的不同来反映该省份现有确诊的数值,并且鼠标悬停时,会显示该省份的现有确诊人数与境外输入人数[7]。
用户可以直观看出全国疫情以及各省份疫情分布。
现有确诊较为严重的两个城市为广东与台湾,主要确诊病例来源为境外输入病例。
应加强对境外人员入境的疫情管控工作,防止境外输入病例的二次传播。
4.3各省份疫情分布图
各省份疫情分布图,渲染效果如图7所示。
在全国疫情分布图上创建点击事件,点击省份之后进入各省份疫情分布图,显示出该省各个市的疫情分布。
用户可以直观的看出各省份中各个市的疫情分布,图7中以广东省为例,目前广东省疫情较为严重的地区为广州市。
4.4累计疫情趋势图
累计疫情趋势图,渲染效果如图8所示,其中以近两个月日期为横轴,以累计疫情数据为纵轴。
以不同颜色的折线来区分累计确诊、累计治愈、累计死亡、现有疑似数据。
在鼠标悬停时会有这一天的全国累计疫情的数据显示[8]。
由图8可以看出,从2021年5月15日开始,截止2021年6月21日累计确诊人数有明显的上升趋势,与台湾疫情的爆发以及境外输入病例的增多有密切关系。
由此可以看出,疫情仍未完全褪去,并且仍有爆发的可能性。
4.5新增疫情趋势图
新增疫情趋势图,渲染效果如图9所示。
近两个月日期为横轴,以新增疫情数据为纵轴。
不同颜色的折线来区分新增确诊、新增治愈、新增死亡、新增疑似数据。
鼠标悬停时显示这一天的全國新增疫情数据[9]。
用户由该图可以看出,从2021年4月23日开始,截止至2021年6月21日,新增确诊人数呈现先增加后减少的趋势。
说明在我国先进的医疗技术下,加以民众的配合,新一轮疫情的爆发在短时间内就得到了控制。
4.6全国疫苗数据实时追踪
全国疫苗数据实时追踪,渲染效果如图10所示。
用户可以看到最新的疫苗接种情况。
数据包含累计接种剂次,较昨日新增接种剂次、还有每百人接种人数。
截止至2021年6月21日,最新累计接种剂次高达1049744000例,我国疫苗接种乘势而上,实现新突破。
4.7疫苗累计接种趋势图
疫苗累计接种趋势图的可视化,渲染效果如图11所示。
其中,以近两个月的日期为横轴,以疫苗累计接种剂次数据为纵轴。
在鼠标悬停时会有疫苗累计接种剂次数据显示。
由该图可见从2021年4月23日起,截止2021年6月21日,我国疫苗接种剂次呈明显上升趋势,疫苗接种进度推进速度正在加快。
5结束语
截至到2021年6月,疫情仍未完全褪去,民众最为关心的是疫苗接种情况。
本系统基于疫情数据显示的基础上,增加疫苗数据显示功能。
利用数据爬虫技术完成数据的获取与下载,经数据处理后形成数据集,数据可视化阶段利用Python语言的Flask框架、ECharts可视化等可视化技术,对疫情数据以及疫苗数据进行数据可视化。
经过对现有技术的分析,并在可视化内容上做出创新。
集可视化内容于一个页面中,疫情数据与疫苗数据一目了然,用户可以从多方面,多角度,全方位直观的观察到疫情数据、疫情发展趋势,以及疫苗接种情况。
本系统的开发是用来帮助民众充分了解全国各地的疫情情况、近期的疫情发展趋势以及疫苗接种情况。
参考文献(References):
[1]周文帆.基于Flask的形式化验证系统的设计与实现[D].北京交通大学,2020.
[2]刘玉玲,郑力新.新冠肺炎疫情数据的抓取及可视化研究[J].电子设计工程,2021.29(7):
40-44
[3]陈敬静.SQLite数据库研究与可视化[D].南京邮电大学,2020.
[4]先巡,袁军.Ajax/Javascript在网页中的特效应用[J].黔南民族师范学院学报,2019.39(S1):
100-103
[5]郑翔,王慧芳,严娴峥,金丽娟,温桂平,何奔腾.用于APP的缺陷文本自动分类与质量保证方法[J].电力系统及其自动化学报,2020.32(7):
131-136
[6]冷四军.基于PythonFlask的运维信息管理系统设计与实现[J].电脑编程技巧与维护,2021.5:
87-88
[7]彭顺生.基于ECharts的肺炎疫情数据处理与可视化[J].计算机时代,2020.7:
47-49,53
[8]杨晨,苏有慧,周军.新冠肺炎疫情大数据可视化平台设计与实现[J].计算机时代,2021.1:
61-64
[9]刘玉玲,郑力新.新冠肺炎疫情数据的抓取及可视化研究[J].电子设计工程,2021.29(7):