首页 编程教程正文

使用pyecharts绘制全国冠状病毒疫情地图

piaodoo 编程教程 2020-02-22 22:15:21 1404 0 python教程

本文来源吾爱破解论坛

这几天宅在家里闲得慌,随便写个练练手 效果图

2020-02-06_18-33-06.png (166.65 KB, 下载次数: 4)

下载附件  保存到相册

2020-2-6 18:33 上传


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

# 腾讯数据源
url = "https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5"
res = json.loads(requests.get(url).json()["data"])
datas = res["areaTree"][0]["children"]
# 全国数据做副标题
china_total = "确诊:{} 疑似:{} 治愈:{} 死亡:{} 更新日期:{}".format(res["chinaTotal"]["confirm"],
                                                       res["chinaTotal"]["suspect"], res["chinaTotal"]["heal"],
                                                       res["chinaTotal"]["dead"], res["lastUpdateTime"])
provinces = []
confirm_value = []

# 遍历获取各省份数据
for data in datas:
    provinces.append(data["name"])
    confirm_value.append(data["total"]["confirm"])

# 链式调用
cmap = (
    Map(init_opts=opts.InitOpts(width="900px", height="700px", page_title="新型冠状病毒疫情地图"))

    # 在地图中插入数据,使用中国地图,隐藏标记
    .add("确诊", [list(z) for z in zip(provinces, confirm_value)], "china", is_map_symbol_show=False)

    # 设置坐标属性,显示省份名
    .set_series_opts(
        label_opts=opts.LabelOpts(is_show=True)
    )

    # 设置全局属性
    .set_global_opts(
        # 分段型数据,自定义分段
        visualmap_opts=opts.VisualMapOpts(is_piecewise=True, pieces=[
            {"min": 1000, "color": "#70161d"},
            {"min": 500, "max": 1000, "color": "#cb2a2f"},
            {"min": 100, "max": 500, "color": "#e55a4e"},
            {"min": 10, "max": 100, "color": "#f59e83"},
            {"min": 1, "max": 10, "color": "#fdebcf"}
        ]),
        # 标题
        title_opts=opts.TitleOpts(title="全国新型冠状病毒疫情地图", subtitle=china_total, pos_left="center", pos_top="10px"),
        # 不显示图例
        legend_opts=opts.LegendOpts(is_show=False),
        # 提示框
        tooltip_opts=opts.TooltipOpts(trigger_on="click", formatter='省份:{b}<br/>{a}:{c}')
    )
)

# 在 html 中渲染图表
cmap.render()

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/7994.html

搜索