8行Python代码轻松绘制新冠疫情地图

前两天发了篇 新冠疫情可视化动态地图变化 ,介绍北京大学可视化与可视分析实验室出炉的疫情可视化作品

有朋友就问能否介绍下如何使用Python绘制,现在我们就来看看。

Python绘制地图有很多模块可以实现,今天我们介绍PyEcharts

PyEcharts是百度可视化框架Echarts的Python版本,使用相对简单。

绘制的地图效果是这样的,因为湖北新增确诊人数远大于其他地区,所以看到就是这个效果了。

8行Python代码轻松绘制新冠疫情地图

PyEcharts分为 v0.5.x 和 v1.x 两个大版本,v0.5.x 和 v1.x 间不兼容,v0.5.x是基于Python2.7+、3.4+版本开发的,v1.x是一个全新的版本,它是基于Python3.6+版本开发的,另外经PyEcharts开发团队决定,0.5.x 版本将不再进行维护。

所以本文采用v1.x版本进行绘制地图。

首先我们来安装需要的模块:

# 安装pyecharts模块,直接安装就是最新的版本
pip install pyecharts
# 安装世界地图
pip install echarts-countries-pypkg
# 安装中国省份地图
pip install echarts-china-provinces-pypkg
# 安装中国城市地图
pip install echarts-china-cities-pypkg

 

然后导入需要使用的模块:

# 导入需要使用的模块
import pandas
from pyecharts.charts import Map,Geo
from pyecharts import options as opts

 

然后导入需要数据,数据是这样的,存在Excel表格中:

8行Python代码轻松绘制新冠疫情地图

长按识别下方二维码,并关注公众号
回复“
DTX”获取案例数据

8行Python代码轻松绘制新冠疫情地图

导入数据后然后将数据转换为二元的列表,这是要求的格式,代码如下:
# 导入数据
data = pandas.read_excel('C:/Python/xgyq.xlsx',sheet_name='1')
# 将数据转换为二元的列表
list1 = list(zip(data['省份'],data['新增']))

接下来就可以创建地图并设置相应的参数了,代码如下:
# 创建一个地图对象
map_1 = Map()# 对全局进行设置
map_1.set_global_opts(
#设置标题
title_opts=opts.TitleOpts(title="全国疫情地图"),
#设置最大数据范围
visualmap_opts=opts.VisualMapOpts(max_=2500)  
)

 

最后使用add方法添加地图数据与地图类型,并导出地图,代码如下:
# 使用add方法添加地图数据与地图类型
map_1.add("新增确诊人数", list1, maptype="china")
# 地图创建完成后,通过render()方法可以将地图渲染为html
map_1.render('全国疫情地图.html')
THE END
分享
二维码
海报
8行Python代码轻松绘制新冠疫情地图
前两天发了篇 新冠疫情可视化动态地图变化 ,介绍北京大学可视化与可视分析实验室出炉的疫情可视化作品。 有朋友就问能否介绍下如何使用Python绘制,现在我们……
<<上一篇
下一篇>>