亲宝软件园·资讯

展开

利用pyecharts绘制新冠状病毒的疫情地图 pyecharts绘制中国2020肺炎疫情地图的实例代码

_学习,进步 人气:0

近来武汉肺炎肆虐全国,大多人的日常应该是宅在家里。出于好奇,笔者想用Python来绘制中国2020肺炎疫情地图。

本代码采用Python3,需要安装模块:pyechartsecharts-china-provinces-pypkg

Python代码如下:

# -*- coding: utf-8 -*-
# author: Jclian91
# time: 2020-01-29 11:37
# -*- coding: utf-8 -*-
# author: Jclian91
# time: 2020-01-29 11:37

from pyecharts.charts import Map
from pyecharts import options as opts

# 省和直辖市
province_distribution = {'湖北':3554, '浙江':296, '广东': 241,
       '湖南':221, '河南':206, '安徽': 152,
       '重庆':147, '山东':121, '江西': 109,
       '四川':108, '江苏':99, '北京':91,
       '福建':82, '上海':80, '广西':58,
       '陕西':56, '河北':48, '云南':44,
       '海南':43, '黑龙江':37, '辽宁':36,
       '山西':27, '天津':25, '甘肃':24,
       '内蒙古':16, '新疆':13, '宁夏':12,
       '贵州':9, '吉林':9, '台湾':8,
       '香港':8, '澳门':7, '青海':6,
       '西藏':0
       }

# maptype='china' 只显示全国直辖市和省级
map = Map()
map.set_global_opts(
 title_opts=opts.TitleOpts(title="20200129中国疫情地图"),
 visualmap_opts=opts.VisualMapOpts(max_=3600, is_piecewise=True,
          pieces=[
          {"max": 5000, "min": 1001, "label": ">1000", "color": "#8A0808"},
          {"max": 1000, "min": 500, "label": "500-1000", "color": "#B40404"},
          {"max": 499, "min": 100, "label": "100-499", "color": "#DF0101"},
          {"max": 99, "min": 10, "label": "10-99", "color": "#F78181"},
          {"max": 9, "min": 1, "label": "1-9", "color": "#F5A9A9"},
          {"max": 0, "min": 0, "label": "0", "color": "#FFFFFF"},
          ], ) #最大数据范围,分段
 )
map.add("20200129中国疫情地图", data_pair=province_distribution.items(), maptype="china", is_roam=True)
map.render('20200129中国疫情地图.html')
from pyecharts.charts import Map
from pyecharts import options as opts

# 省和直辖市
province_distribution = {'湖北':3554, '浙江':296, '广东': 241,
       '湖南':221, '河南':206, '安徽': 152,
       '重庆':147, '山东':121, '江西': 109,
       '四川':108, '江苏':99, '北京':91,
       '福建':82, '上海':80, '广西':58,
       '陕西':56, '河北':48, '云南':44,
       '海南':43, '黑龙江':37, '辽宁':36,
       '山西':27, '天津':25, '甘肃':24,
       '内蒙古':16, '新疆':13, '宁夏':12,
       '贵州':9, '吉林':9, '台湾':8,
       '香港':8, '澳门':7, '青海':6,
       '西藏':0
       }

# maptype='china' 只显示全国直辖市和省级
map = Map()
map.set_global_opts(
 title_opts=opts.TitleOpts(title="20200129中国疫情地图"),
 visualmap_opts=opts.VisualMapOpts(max_=3600, is_piecewise=True,
          pieces=[
          {"max": 5000, "min": 1001, "label": ">1000", "color": "#8A0808"},
          {"max": 1000, "min": 500, "label": "500-1000", "color": "#B40404"},
          {"max": 499, "min": 100, "label": "100-499", "color": "#DF0101"},
          {"max": 99, "min": 10, "label": "10-99", "color": "#F78181"},
          {"max": 9, "min": 1, "label": "1-9", "color": "#F5A9A9"},
          {"max": 0, "min": 0, "label": "0", "color": "#FFFFFF"},
          ], ) #最大数据范围,分段
 )
map.add("20200129中国疫情地图", data_pair=province_distribution.items(), maptype="china", is_roam=True)
map.render('20200129中国疫情地图.html')

注意,代码中的数据为截止到2020年1月29日中午12点整的全国各省的确诊人数,西藏人数应为0。

运行上述代码,会生成20200129中国疫情地图.html,用浏览器打开该HTML文件,如下:

在地图上可以进行一些互动,比如点击某个省份,我们可以看到该省份的数据;再比如我们取消“>1000”这一选项,就会发现湖北省颜色为白色,如下图:

以上就是本次小编整理的全部内容,感谢大家的支持。

加载全部内容

相关教程
猜你喜欢
用户评论