| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> 使用tushare数据画疫情感染人数地图 -> 正文阅读 |
|
[Python知识库]使用tushare数据画疫情感染人数地图 |
总是看到网上有各种各样的可以用地图来展示某一地区的情况,如GDP的增速、人口的变化等,于是就想想这个问题是否能用python来实现,经查阅资料发现,用python来画地图其实也并不难,做好数据和地图的关联就可以实现。 一、项目准备使用python画地图,需要安装pyecharts库和tushare库,所以得先下载安装,安装方法也比较简单,语句为:
二、项目目标在tushare里,有关于疫情的另类数据,本次就通过使用该数据来学习如何画地图,由于数据中包含有世界范围数据和国内的数据,因此本次画地图主要是利用上述数据画世界地图和中国地图。 三、项目过程(一)数据获取(1)世界数据对于世界级数据,tushare给出的接口是ncov_global,具体地址和详细参数解释可以查看网站https://tushare.pro/document/2?doc_id=213
(2)中国数据对于国内数据,tushare给出的接口是ncov_num,具体地址和详细参数解释可以查看网站https://tushare.pro/document/2?doc_id=202
国内的数据则在2020年3月22日就停止更新了,因此需要获取在这个日期前的每个省的对应数据。 (二)数据整理从获取到的数据可以发现,无论是在世界数据方面还是在中国数据方面,应该都存在有大量的冗余数据,我们所需要做的是保留最后一次更新的数据。 (1)世界数据对于世界级数据,去除多余数据的思路比较清晰,直接提取publish_date为20200619那天的数据就好,于是拿到了197条数据。
然而,后续在画图时发现数据存在问题,经过检验后发现,这一天的数据里,还存在有多个中国地区的数据,所以需要将其再次删除,只保留国家层面的数据。
(2)中国数据对于中国数据,我们可以再原数据的基础上删除那些重复的数据,仅保留最后一次出现的数据。
(三)绘制地图(1)基本思路在有了数据后,绘制地图就简单多了。绘制地图需要的是pyecharts库中的map类,该方法的参数设置请参照库文档。
(2)生成数据对从数据中可以看到,感染人数是confirmed_num,国家名是country_enname,地区名是area_name,分别将其取出,然后构建数据对。数据对格式是:[国家名,数据]
(3)画世界地图
世界地图很快就出来了,但很奇怪的是,美国这个国家居然不是红色的,而且也没有数据,后面通过对比其国家名才发现,原来在数据中,美国的英文名称是United States of America,而在地图上,美国的名称是United States,所以二者对不上,造成美国没有被关联上。于是对数据进行再次修改。
重新关联并生成地图: (4)画中国地图画中国地图的时候也遇到了和美国一样的问题,发现在地图上,每个省的名称都只有两个字,而在做数据对的时候,是按省、市、自治区的全名来写的,所以要对数据进行重新配对。发现除了内蒙古和黑龙江外,其他的都是只有两个字符,于是把每个地区名重新做了设置。
调整代码画中国地图:
四、尾声地图是画完了,感觉用pyecharts画的地图还是很粗糙,希望以后能够更精确一点,更美观一些。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/19 15:28:54- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |