python_day7_map

news/2025/3/22 0:49:05/

绘制简易地图

导包

import jsonfrom pyecharts.charts import Map
from pyecharts.options import *

准备地图对象

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": 99, "label": "1-99", "color": ""},{"min": 100, "max": 199, "label": "100-199", "color": ""},{"min": 200, "max": 299, "label": "200-299", "color": ""},{"min": 300, "max": 399, "label": "300-399", "color": ""},{"min": 400, "max": 499, "label": "400-499", "color": ""}])
)

绘图

map.render()

在这里插入图片描述

案例1,全国疫情地图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

读取数据文件

f = open("D:/疫情.txt", "r", encoding="utf-8")
data = f.read()
# 关闭文件
f.close()
print(type(data))

在这里插入图片描述

将json转为字典

data_dict = json.loads(data)
# print(data_dict)
print(type(data_dict))

在这里插入图片描述

取出各省数据

# print(data_dict["areaTree"][0]["children"])
province_data_list = data_dict["areaTree"][0]["children"]
print(type(province_data_list))
data_list = []
for province_data in province_data_list:province_name = province_data["name"]province_num = province_data["total"]["confirm"]# (省份,确诊人数)组成元组,使用append()方法加入列表,(name,num)为列表中的一个元素data_list.append((province_name, province_num))
print(data_list)

在这里插入图片描述

绘图

# 创建地图对象
map = Map()
# 添加数据,注意此处语法
map.add("疫情地图", data_list, "china")
# 全局选项
map.set_global_opts(title_opts=TitleOpts(title="全国疫情地图", pos_bottom="1%", pos_left="center"),legend_opts=LegendOpts(is_show=True),toolbox_opts=ToolboxOpts(is_show=True),visualmap_opts=VisualMapOpts(is_show=True,is_piecewise=True,pieces=[{"min": 1, "max": 199, "label": "1-199", "color": ""},{"min": 200, "max": 399, "label": "200-399", "color": ""},{"min": 400, "max": 599, "label": "400-599", "color": ""},{"min": 600, "max": 799, "label": "600-799", "color": ""},{"min": 800, "max": 999, "label": "800-999", "color": ""},{"min": 1000, "max": 2999, "label": "1000-2999", "color": ""},{"min": 3000, "max": 79999, "label": "3000-79999", "color": ""}])
)
# 生成地图
map.render("疫情地图.html")

在这里插入图片描述
在这里插入图片描述

案例二,取出某省份数据,绘制疫情地图

在这里插入图片描述

# 导包
import json
from pyecharts.charts import Map
from pyecharts.options import *# 取数据
f = open("D:/疫情.txt", "r", encoding="utf-8")
data = f.read()
f.close()
# print(data)
# print(type(data))# json转python数据类型
data_dict = json.loads(data)
# print(data_dict)
# print(type(data_dict))# 取出江苏省数据
# print(data_dict['areaTree'][0]['children'][1])
jiangsu_data = data_dict['areaTree'][0]['children'][1]
data_list = jiangsu_data['children']
# print(data_list)# 取出各市数据
list_city = []
for element in data_list:name = element['name']  # 市名,  str+"市"num = element['total']['confirm']list_city.append((name, num))  # 列表中每个元素为元组
# print(list_shi)# 绘图
map = Map()
map.add("江苏省疫情地图", list_city, "江苏")
# 全局选项
map.set_global_opts(title_opts=TitleOpts(title="江苏各市疫情地图", pos_bottom="1%", pos_left="center"),legend_opts=LegendOpts(is_show=True),toolbox_opts=ToolboxOpts(is_show=True),visualmap_opts=VisualMapOpts(is_show=True,is_piecewise=True,pieces=[{"min": 1, "max": 199, "label": "1-199", "color": ""},{"min": 200, "max": 299, "label": "200-299", "color": ""},{"min": 300, "max": 399, "label": "300-399", "color": ""},{"min": 400, "max": 499, "label": "400-499", "color": ""},{"min": 500, "max": 599, "label": "500-599", "color": ""},{"min": 600, "max": 699, "label": "600-699", "color": ""},{"min": 700, "max": 799, "label": "700-799", "color": ""}])
)
map.render("江苏.html")

在这里插入图片描述
在这里插入图片描述

文章来源:https://blog.csdn.net/Yel10w_/article/details/131704693
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/news/863296.html

相关文章

u盘在 计算机管理显示无媒体,urdrive_u盘显示无媒体怎么办_启动盘

urDrive 是金士顿 DataTraveler USB 闪存盘的内置软件,此款全新的软件让您能更有效率地寻找所需数据。 金士顿urDrive软件未来将会预装在一系列金士顿入门级DataTraveler系列U盘上,比如说101G2,108以及109等系列的USB闪存盘上都将预装这款管理…

详解FAT32文件系统

 硬盘是用来存储数据的,为了使用和管理方便,这些数据以文件的形式存储在硬盘上。任何操作系统都有自己的文件管理系统,不同的文件系统又有各自不同的逻辑组织方式。例如:常见的文件系统有FAT,…

【springboot中使用@RequestBody MultiValueMap 总是报400,415错误-关于流程引擎flowable】

springboot中使用RequestBody MultiValueMap 总是报400,415错误-关于流程引擎flowable 第一步:报错代码举例 在Spring boot 中使用 RequestBody 会报错,提示错误 Content type ‘application/x-www-form-urlencoded;charsetUTF-8’ not supported&…

axios ( ajax pro )

axios 什么是 axiosaxios 介绍axios 的使用axios 工具包下载axios 使用实例什么是 axios axios 介绍 根据我的理解就是对于原生ajax的一个封装,以达到方便使用异步刷新的目的。 ajax是什么呢?(Asynchronous JavaScript And XML,异步的JavaScript和XML) 首先要理解异步刷…

【无标题】打印水仙花(pyth)

i100 while i<1000: ai//100#计算百位 bint((i-a*100)/10)#计算十位 ci%10#计算个位 ta**3b**3c**3#用来判断是否为水仙花数 if ti: print(i) i1#继续进行循环

Python编程小练习——水仙花数

打印出所有的"水仙花数"&#xff0c;所谓"水仙花数"是指一个三位数&#xff0c; 其各位数字立方和等于该数本身。 例如&#xff1a;153是一个"水仙花数"&#xff0c;因为1531的三次方&#xff0b;5的三次方&#xff0b;3的三次方。 for i in ran…

python水仙花数判断程序

水仙花数判断程序 水仙花数是一个三位整数&#xff0c;如153是一个水仙花数&#xff0c;是因为该数 的百位的立方、十位的立方、个位的立方之和等于该数本身&#xff0c;如下所 示&#xff1a; 1^3 5^3 3^3153 print("所有的三位数中的水仙花数如下图所示&#xff1a;&q…

Python 寻找水仙花数

寻找水仙花数 寻找水仙花数 &#xff08;模块&#xff1a;numEx&#xff0c;所在文件名 num_hw.py&#xff0c;Level&#xff1a;★&#xff09; 水仙花数&#xff08;Narcissistic number&#xff09;是指一个 3 位数&#xff0c;它的每个位上的数字的 3 次幂之和 等于它本身…