• 数据可视化:地图


    1.基础地图的使用

    如何添加颜色表示层级

     代码实现

    1. """
    2. 基础地图的使用
    3. """
    4. from pyecharts.charts import Map
    5. from pyecharts.options import VisualMapOpts
    6. # 准备地图对象
    7. map = Map()
    8. # 准备数据
    9. data = [
    10. ("北京市", 9),
    11. ("上海市", 59),
    12. ("甘肃省", 812),
    13. ("黑龙江省", 313),
    14. ("四川省", 1999),
    15. ("台湾省", 19999)
    16. ]
    17. # 添加数据
    18. map.add("测试地图", data, "china")
    19. # 设置全局选项
    20. map.set_global_opts(
    21. visualmap_opts=VisualMapOpts(
    22. is_show=True,
    23. is_piecewise=True,
    24. pieces=[
    25. {"min": 1, "max": 9, "label": "1-9", "color": "#38f55c"},
    26. {"min": 10, "max": 99, "label": "10-99", "color": "#f5ad38"},
    27. {"min": 100, "max": 499, "label": "100-500", "color": "#f54a38"},
    28. {"min": 500, "max": 998, "label": "500-998", "color": "#9d38f5"},
    29. {"min": 999, "label": ">999", "color": "#201641"}
    30. ]
    31. )
    32. )
    33. # 绘图
    34. map.render()

    2.疫情地图——国内疫情地图

    代码实现

    1. """
    2. 演示全国疫情可视化地图开发
    3. """
    4. import json
    5. from pyecharts.charts import Map
    6. from pyecharts.options import *
    7. # 读取数据文件
    8. f = open("D:\\IOText\\DataDoing\\疫情.txt", "r", encoding="UTF-8")
    9. china_data_json = f.read()
    10. # 关闭文件
    11. f.close()
    12. # 取到各省数据
    13. china_data_dict = json.loads(china_data_json)
    14. province_data_list = china_data_dict["areaTree"][0]["children"]
    15. # 地图最终所需的数据
    16. map_list = list()
    17. # 组装每一省份和确诊人数为元组,并各个省的数据都封装入列表内
    18. for province_data in province_data_list:
    19. # 省份名称
    20. province_name = province_data["name"]
    21. # 确诊人数
    22. province_confirm = province_data["total"]["confirm"]
    23. map_list.append((province_name, province_confirm))
    24. print(map_list)
    25. # 创建地图对象
    26. map = Map()
    27. # 添加数据
    28. map.add("全国身份确诊人数", map_list, "china")
    29. # 设置全局配置,指定分段的视觉映射
    30. map.set_global_opts(
    31. title_opts=TitleOpts(title="全国疫情地图"),
    32. visualmap_opts=VisualMapOpts(
    33. is_show=True,
    34. is_piecewise=True,
    35. pieces=[
    36. {"min": 1, "max": 99, "label": "1-99", "color": "#CCFFFF"},
    37. {"min": 100, "max": 999, "label": "100-999", "color": "#FFFF99"},
    38. {"min": 1000, "max": 4999, "label": "1000-4999", "color": "#FF9966"},
    39. {"min": 5000, "max": 9999, "label": "5000-9999", "color": "#FF6666"},
    40. {"min": 10000, "max": 99999, "label": "10000-99999", "color": "#CC3333"},
    41. {"min": 100000, "label": ">100000", "color": "#990033"}
    42. ]
    43. )
    44. )
    45. # 绘图
    46. map.render("全国疫情地图.html")

    相关数据文件在文章开头出获取


    3.疫情地图——省级疫情地图

    但是我直接演示四川的地图

    代码示例

    1. """
    2. 省级疫情地图
    3. """
    4. import json
    5. from pyecharts.charts import Map
    6. from pyecharts.options import *
    7. # 读取数据文件
    8. f = open("D:\\IOText\\DataDoing\\疫情.txt", "r", encoding="UTF-8")
    9. sichuan_data_json = f.read()
    10. # 关闭文件
    11. f.close()
    12. # 取到各省数据
    13. sichuan_data_dict = json.loads(sichuan_data_json)
    14. sichuan_children_data_list = sichuan_data_dict["areaTree"][0]["children"][12]["children"]
    15. # 地图最终所需的数据
    16. map_list = list()
    17. # 组装每一省份和确诊人数为元组,并各个省的数据都封装入列表内
    18. for province_data in sichuan_children_data_list:
    19. # 省份名称
    20. if province_data["name"] == "阿坝":
    21. province_name = province_data["name"] + "藏族羌族自治州"
    22. elif province_data["name"] == "甘孜":
    23. province_name = province_data["name"] + "藏族自治州"
    24. elif province_data["name"] == "凉山":
    25. province_name = province_data["name"] + "彝族自治州"
    26. else:
    27. province_name = province_data["name"] + "市"
    28. # 确诊人数
    29. province_confirm = province_data["total"]["confirm"]
    30. map_list.append((province_name, province_confirm))
    31. print(map_list)
    32. # 创建地图对象
    33. map = Map()
    34. # 添加数据
    35. map.add("全国身份确诊人数", map_list, "四川")
    36. # 设置全局配置,指定分段的视觉映射
    37. map.set_global_opts(
    38. title_opts=TitleOpts(title="四川省疫情地图"),
    39. visualmap_opts=VisualMapOpts(
    40. is_show=True,
    41. is_piecewise=True,
    42. pieces=[
    43. {"min": 1, "max": 9, "label": "1-9", "color": "#57fa66"},
    44. {"min": 10, "max": 99, "label": "10-99", "color": "#faf857"},
    45. {"min": 100, "max": 499, "label": "100-499", "color": "#FF9966"},
    46. {"min": 500, "max": 999, "label": "500-999", "color": "#FF6666"},
    47. {"min": 1000, "max": 9999, "label": "1000-9999", "color": "#CC3333"},
    48. {"min": 10000, "label": ">9999", "color": "#990033"}
    49. ]
    50. )
    51. )
    52. # 绘图
    53. map.render("四川疫情地图.html")

    结果示例

    结语

    简简单单直接拿下啦!!!

    再见ヾ( ̄▽ ̄)Bye~Bye~

  • 相关阅读:
    《你好,旧时光文本聚类分析》
    花菁染料 Cy3.5 酸,Cy3.5 acid,Cyanine3.5 carboxylic acid物化光谱特性及结构式解析
    如何高效备考系统架构设计师考试?
    Java密码学之加解密
    2.23每日一题(反常积分收敛性的判断)
    年薪中位数超30万,南大AI专业首届毕业生薪资曝光
    手撕二叉搜索树(Binary Search Tree)
    【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter1-Chapter16 )
    PMP 11.27 考试倒计时13天!冲刺啦!
    IDEA中配置完Maven后 重启就恢复默认设置
  • 原文地址:https://blog.csdn.net/DDDDWJDDDD/article/details/134205561