带大家用40行python代码实现一个疫情地图

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

带⼤家⽤40⾏python代码实现⼀个疫情地图
最近两个⽉,因为新冠病毒⽆情的肆虐,相信会给每个中国⼈的记忆中画上重重的⼀笔。

到今天为⽌,疫情形势依然⼗分严峻,虽然除湖北外的其他省份已经连续⼗⼀天确诊⼈数下降,但是接下来还有将近⾄少1.6亿的⼈⼝迁徙,这⽆疑还存在⼀定的风险。

相信很多⼈和我⼀样,早上起床的第⼀件事情都是查看疫情数据,⼀般的数据都配有中国确诊⼈数的地图,之前看到csdn推过⼀篇⽂章,有同学⽤python实现疫情地图,我觉得挺有意思的,于是就尝试⾃⼰动⼿也写⼀个,主要⽤到如下的库:
- ⽹络请求:requests
- 绘制图表的库:pyecharts
获取疫情数据
在腾讯新闻和⽀付宝中,都能看到疫情数据,但是获取⽀付宝的数据难度相对⼤⼀些,所以决定从腾讯新闻的数据⼊⼿,⾸先在chrome中打开链接:
通过查看图中所有的接⼝,是获取各个省份医院数量、根据省份名称查询每⽇新增确诊⼈数的数据,并没有我们需要的全国各个省份确诊⼈数的数据。

我们再切换到chrome开发者⼯具的console来看看开发是否有打印对应的数据,bingo!果然找到了⽐较有⽤的信息:
我们看上图两个关键信息,⼀个是红框内的url,另⼀个是打印的全部数据,我们从其中找到了我们需要的全国各个省份的确诊总数量。

数据源确定了,接下来就是使⽤requests库请求数据,并且将上图areaTree下⾯的children中的数据取出来:
上⾯的代码需要注意⼀点,就是requests.get(data_url).json()["data"]返回的是字符串,需要将其转成json,才能从中将值取出来。

现在数据有了,万事俱备,只⽋东风!接下来我们开始绘制中国地图。

python中进⾏图表绘制的库主要有两个:matplotlib 和 pyecharts, 相⽐较⽽⾔:
matplotlib中提供了BaseMap可以⽤于地图的绘制,但是个⼈觉得其绘制的地图不太美观,另外⼀个重要的原因,其安装有点⿇烦,可能存在兼容性问题。

pyecharts是基于百度开源的js库echarts⽽来,其最⼤的特点是:简单,安装简单、使⽤也简单。

所以最终决定⽤pyecharts来绘制地图,其核⼼代码如下:
在pyecharts的官⽅⽂档()中详细的列出了绘制各种图表的⽅法及参数的含义,最重要的,⽂档中提供了各种可供参考的demo,⽅便我们更快的实现功能。

到这⾥所有的代码都实现完成了,数了下,除掉注释,总共40⾏代码,是不是很简单,是不是很强⼤!上个我们实现的效果图:
想要掌握⼀个知识点,最好的⽅法就是去实践,这⾥给⼤家留两个⼩⼩的需求:
实现⼀个折线图,展⽰中国除湖北外每⽇新增确诊⼈数变化趋势图。

实现⼀个你所在城市,每天新增确诊⼈数变化的柱状图。

如果你完成了,可以将图⽚贴出来,⼤家⼀起分享交流下。

可以将图⽚贴到知识星球相应的讨论主题(),微信公众号回复消息貌似没办法回复图⽚。

相关文档
最新文档