python使用pyecharts构建地图

基本地图演示

# 导入地图功能
from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts
#准备地图对象
map=Map()
#准备数据
data=[
    ("浙江省",99),#元组的地方必须要和地图上的名字吻合
    ("四川省",199),
    ("辽宁省",299),
    ("湖南省",399),
    ("河南省",499)
]
#添加数据
map.add("测试地图",data,"china")#第一个是地图名称,第二个是数据,第三个是中国地图默认就是中国地图
# 设置全局选项
map.set_global_opts(
    visualmap_opts=VisualMapOpts(#地图视觉指示器
        is_show=True,
        is_piecewise=True,#分段
        pieces=[#指定分段
            {"min":1,"max":9,"lable":"1-9","color":"#CCFFFF"},
            {"min":10,"max":99,"lable":"10-99","color":"#FF6666"},
            {"min":100,"max":500,"lable":"100-500","color":"#990033"}
        ]
    )
)
map.render()

在这里插入图片描述

国内疫情地图的构建

import json
# 导入地图功能
from pyecharts.charts import Map
from pyecharts.options import *
#准备地图对象
map=Map()
#准备数据
#从文件中读出数据
f=open(r"C:\cwy\slsd\毕设\python学习\资料\第1-12章资料\资料\可视化案例数据\地图数据\疫情.txt","r",encoding="UTF-8")
data=f.read()
f.close()
#将json数据转换成python数据
data_dict=json.loads(data)
#从字典中取出省份数据
province_data_list=data_dict["areaTree"][0]["children"]
# 组装每个省份和确诊人数为元组,并将各个省份的数据都封装到列表中
data_list=[]
for province_data in province_data_list:
    province_name=province_data["name"]+"省"#因为数据中没有省字,但是地图中省份的名字里是有省的,如果不加对应不上
    province_confirm=province_data["total"]["confirm"]#确诊人数
    data_list.append((province_name,province_confirm))
#添加数据
map.add("测试地图",data_list,"china")#第一个是地图名称,第二个是数据,第三个是中国地图默认就是中国地图
# 设置全局选项
map.set_global_opts(
    title_opts=TitleOpts(title="全国疫情地图"),#标题
    visualmap_opts=VisualMapOpts(#地图视觉指示器
        is_show=True,
        is_piecewise=True,#分段
        pieces=[#指定分段
            {"min":1,"max":99,"lable":"1-99","color":"#CCFFFF"},
            {"min":100,"max":999,"lable":"100-999","color":"#FFFF99"},
            {"min":1000,"max":4999,"lable":"1000-4999","color":"#999966"},
            {"min":5000,"max":9999,"lable":"5000-9999","color":"#996666"},
            {"min":10000,"max":99999,"lable":"10000-99999","color":"#CC3333"},
            {"min":100000,"lable":">100000","color":"#990033"}
        ]
    )
)
map.render("全国疫情地图.html")

在这里插入图片描述

河南省疫情地图的绘制

# 河南省疫情地图的配置
# 导入模块
import json
from pyecharts.charts import Map
from pyecharts.options import *
#准备数据
f=open(r"C:\cwy\slsd\毕设\python学习\资料\第1-12章资料\资料\可视化案例数据\地图数据\疫情.txt","r",encoding="UTF-8")
data=f.read()
f.close()
#json数据转换成python数据
pydata=json.loads(data)
#提取需要的数据数据处理
henan_list=[]#列表用来存储数据
city_data=pydata["areaTree"][0]["children"][3]["children"]
for data in city_data:
    city_name=data["name"]+"市"
    city_confirm=data["total"]["confirm"]
    henan_list.append((city_name,city_confirm))
henan_list.append(("济源市",10))
#创建地图对象
map=Map()
#向地图中加入数据
map.add("河南疫情地图",henan_list,"河南")
#总体配置
map.set_global_opts(
    title_opts=TitleOpts(title="河南疫情图"),
    visualmap_opts=VisualMapOpts(
        is_show=True,
        is_piecewise=True,
        pieces=[
            {"min": 1, "max": 99, "lable": "1-99", "color": "#CCFFFF"},
            {"min": 100, "max": 999, "lable": "100-999", "color": "#FFFF99"},
            {"min": 1000, "max": 4999, "lable": "1000-4999", "color": "#999966"},
            {"min": 5000, "max": 9999, "lable": "5000-9999", "color": "#996666"},
            {"min": 10000, "max": 99999, "lable": "10000-99999", "color": "#CC3333"},
            {"min": 100000, "lable": ">100000", "color": "#990033"}
        ]
    )
)
#使用render生成地图
map.render("河南疫情地图.html")

在这里插入图片描述

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老年断牙人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值