• Python---pyecharts地图案例


    基础:

    1. # 可视化图表,导包(地图)
    2. from pyecharts.charts import Map
    3. from pyecharts.options import VisualMapOpts
    4. # 生成地图对象
    5. map = Map()
    6. # 准备数据--------------元组
    7. data = [
    8. ("北京市", 99),
    9. ("上海市", 199),
    10. ("湖南省", 299),
    11. ("台湾省", 399),
    12. ("广东省", 499)
    13. ]
    14. # 添加数据
    15. map.add("测试地图", data, "china")
    16. # 设置全局选项
    17. map.set_global_opts(
    18. visualmap_opts=VisualMapOpts(
    19. is_calculable=True,
    20. is_piecewise=True,
    21. pieces=[
    22. {"min": 1, "max": 9, "label": "1-9", "color": "#CCFFFF"},
    23. {"min": 10, "max": 99, "label": "10-99", "color": "#FF6666"},
    24. {"min": 100, "max": 500, "label": "100-500", "color": "#990033"},
    25. ]
    26. )
    27. )
    28. # 绘图
    29. map.render()

     

    全国:

    1. import json
    2. from pyecharts.charts import Map
    3. from pyecharts.options import *
    4. # 打开、读取、关闭文件
    5. f = open("./疫情.txt", "r", encoding="UTF-8")
    6. data = f.read()
    7. f.close()
    8. # JSON转换为Python
    9. data_dict = json.loads(data)
    10. # 取出省份
    11. province_data_dict = data_dict["areaTree"][0]["children"]
    12. # 每个省份
    13. data_list = []
    14. for province_data in province_data_dict:
    15. province_name = province_data["name"] # 省份名字
    16. province_confirm = province_data["total"]["confirm"] # 确诊人数
    17. data_list.append((province_name, province_confirm))
    18. # print(data_list)
    19. # 地图对象
    20. map = Map()
    21. # 添加数据
    22. map.add("各省份确诊人数", data_list, "china")
    23. # 全局选项
    24. map.set_global_opts(
    25. title_opts=TitleOpts(title="全国疫情地图"),
    26. visualmap_opts=VisualMapOpts(
    27. is_calculable=True, # 是否显示
    28. is_piecewise=True, # 是否分段
    29. pieces=[ # 分段
    30. {"min": 1, "max": 99, "label": "1-99人", "color": "#CCFFFF"},
    31. {"min": 100, "max": 999, "label": "100-999人", "color": "#FFFF99"},
    32. {"min": 1000, "max": 4999, "label": "1000-4999人", "color": "#FF9966"},
    33. {"min": 5000, "max": 9999, "label": "5000-9999人", "color": "#FF6666"},
    34. {"min": 10000, "max": 99999, "label": "10000-99999人", "color": "#CC3333"},
    35. {"min": 100000, "label": "100000-以上人", "color": "#990033"},
    36. ]
    37. )
    38. )
    39. # 绘图
    40. map.render("疫情.html")

    省份:

    1. # 导包
    2. import json
    3. from pyecharts.charts import Map
    4. from pyecharts.options import *
    5. # 打开文件
    6. f = open("./疫情.txt", "r", encoding="UTF-8")
    7. data = f.read()
    8. f.close()
    9. # JSON 转 Python
    10. data_dict = json.loads(data)
    11. # 准备河南省数据
    12. data_henan = data_dict["areaTree"][0]["children"][3]["children"]
    13. # print(data_henan)
    14. # 每个市的数据
    15. data_list = []
    16. for data_henan_num in data_henan:
    17. # print(data_henan_num)
    18. data_name = data_henan_num["name"] + "市"
    19. data_confirm = data_henan_num["total"]["confirm"]
    20. data_list.append((data_name, data_confirm))
    21. # print(data_list)
    22. # 手动添加济源市数据
    23. data_list.append(("济源市", 5))
    24. # 创建地图对象
    25. map = Map()
    26. # 添加数据
    27. map.add("河南省数据", data_list, "河南")
    28. # 设置全局选项
    29. map.set_global_opts(
    30. title_opts=TitleOpts(title="河南疫情地图"),
    31. visualmap_opts=VisualMapOpts(
    32. is_calculable=True, # 是否显示
    33. is_piecewise=True, # 是否分段
    34. pieces=[ # 分段
    35. {"min": 1, "max": 99, "label": "1-99人", "color": "#CCFFFF"},
    36. {"min": 100, "max": 999, "label": "100-999人", "color": "#FFFF99"},
    37. {"min": 1000, "max": 4999, "label": "1000-4999人", "color": "#FF9966"},
    38. {"min": 5000, "max": 9999, "label": "5000-9999人", "color": "#FF6666"},
    39. {"min": 10000, "max": 99999, "label": "10000-99999人", "color": "#CC3333"},
    40. {"min": 100000, "label": "100000-以上人", "color": "#990033"},
    41. ]
    42. )
    43. )
    44. # 生成图表
    45. map.render("河南省疫情.html")

  • 相关阅读:
    【Rust日报】2023-09-07 Tauri 2.0 路线图
    Docker(镜像、容器、仓库)工具安装使用命令行选项及构建、共享和运行容器化应用程序
    Python数据分析--Numpy常用函数介绍(7)--Numpy中矩阵和通用函数
    基于dagger平台实现资源位的接口自动化
    刚才面试官问我你会 Mysql 吗,我一聊一个小时!
    Win11显示麦克风未插上怎么办?Win11显示麦克风未插上的解决方法
    这个c++程序到底错在哪里了?
    JS--判断空值(null、undefined、NaN、false、空字符串等)
    微信小程序二维码
    【Markdown】 Markdown 操作备忘录
  • 原文地址:https://blog.csdn.net/weixin_52053631/article/details/133526468