文章目录
1 前言
Hi,大家好,这里是丹成学长,今天做一个 基于大数据的疫情可视化系统,这只是一个demo,尝试对疫情数据进行分析,并可视化系统
毕设帮助,开题指导,技术解答
??746876041
2 开发简介
学长从各省累计确诊人数随时间增长的态势以及空间分布随时间增长的态势入手,利用所收集的数据将各省累计确诊人数的时空分布用地图、折线图、堆叠条形图的形式呈现出来,从总体态势进行大致分析,然后再通过在不同粒度上展示各省疫情相关的详细信息,以发现其在不同时间段影响其态势变化的原因(境外输入、相关政策颁布等)。
同时还将疫情相关确诊、死亡等数据与各省的GDP、受教育程度、城镇化率、医疗卫生水平进行联系,以发现其与GDP、受教育程度、城镇化率之间是否存在关系。
其目标用户是政府等防控机关,通过本系统可以分析疫情时空分布模式、监控疫情发展态势、评估疫情防控措施。
3 数据集
数据源于爬虫与手动搜集:
weibo.json 新浪微博实时热搜前50的数据
ProvinceData.json 省市疫情详情
源于中国国家统计局(2018年中国统计年鉴)的数据
2020-01-10至2020-02-06数据来自国家,各省,武汉市卫健委疫情公告,2020-02-07后数据从今日头条接口采集
境外输入数据(手动从网上新闻中搜集)
4 实现技术
4.1 系统架构
4.2 开发环境
- 1、Node.js(前端Vue和后端node都依赖该环境)
- 2、开发工具:Git,vscode,Hbuilder,pycharm
- 3、开发语言:Python,HTML+CSS+JavaScript
- 4、重点依赖库:echarts,bootstrap,jQuery
4.3 疫情地图
新型冠状病毒肺炎已经开始全球蔓延,形势越来越严峻,我们除了关注国内发展疫情发展,也开始关注境外疫情的发展变化。通过地理可视化我们能够很直观的看到的各个区域的疫情严重程度。
4.3.1 填充图(Choropleth maps)
- 填充图适合表达区域之间的差异。
- 填充图能够很好的展现形全局差异,细微的差异很难表达。
- 但填充图的展现效果受区域面积影响比较大,容易形成误导
上面的填充图,我们可以关注到亚洲,欧洲,美洲三大疫情区域,但是我们很难关注到,意大利、韩国的疫情严重程度。
4.3.2 气泡图
气泡图使用不同大小的圆圈表示区域上的数值。它在每个地理坐标上显示一个气泡,或在每个区域显示一个气泡。
下图我们以气泡图形式进行疫情地图可视化
通过气泡图我们可以很明确的看出世界上疫情比较严重的国家,而且不会受到区域面积的干扰,欧洲一些面积比较小的国家我们也能够清晰的识别出来。气泡图表达方式缺点在于气泡过多,过大将会产生遮盖现在。
气泡是一种比较好的展现形式,如果使用方式不当也会产生干扰,比如数据映射方法选择,颜色色带选择都会影响数据表达的结果。
关键代码:
# 作者:丹成学长 q746876041
import json
import requests
import jsonpath
from pyecharts.charts import Map,Geo
from pyech