Python数据可视化-地图可视化

一、基础地图使用

基础地图演示

二、疫情地图-国内疫情地图

具体代码如下

"""
演示全国疫情可视化地图开发
"""
import json
from pyecharts.charts import Map
from pyecharts.options import * # 读取数据文件
f = open("疫情.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_name = str(province_name) + str("省") # 有bug,有些特殊的省份不满足这个条件,需要加特别行政区啥的。。。
province_confirm = province_data["total"]["confirm"] # 确诊人数
data_list.append((province_name, province_confirm)) # 将元组组装到绘图的列表中
print(data_list)
# 创建地图对象
map = Map()
# 添加数据
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, "label": "1~99人", "color": "#CCFFFF"},
{"min": 100, "max": 999, "label": "100~999人", "color": "#FFFF99"},
{"min": 1000, "max": 4999, "label": "1000~4999人", "color": "#FF9966"},
{"min": 5000, "max": 9999, "label": "5000~9999人", "color": "#FF6666"},
{"min": 10000, "max": 99999, "label": "10000~99999人", "color": "#CC3333"},
{"min": 100000, "label": "100000+", "color": "#990033"},
]
)
)
# 绘图
map.render("全国疫情地图.html")

实现效果如下图所示

三、疫情地图-省级疫情地图

安徽省疫情地图

具体代码如下:

"""
演示河南省疫情地图开发
"""
import json
from pyecharts.charts import Map
from pyecharts.options import * # 读取文件
f = open("疫情.txt", "r", encoding="UTF-8")
data = f.read()
# 关闭文件
f.close()
# 获取河南省数据
# json数据转换为python字典
data_dict = json.loads(data) # 取到河南省数据
cities_data = data_dict["areaTree"][0]["children"][31]["children"] # 准备数据为元组并放入list
data_list = []
for city_data in cities_data:
city_name = city_data["name"] + "市"
city_confirm = city_data["total"]["confirm"]
data_list.append((city_name, city_confirm)) # 手动添加济源市的数据
# data_list.append(("济源市", 5)) # 构建地图
map = Map()
map.add("安徽省疫情分布", data_list, "安徽")
# 设置全局选项
map.set_global_opts(
title_opts=TitleOpts(title="安徽省疫情地图"),
visualmap_opts=VisualMapOpts(
is_show=True, # 是否显示
is_piecewise=True, # 是否分段
pieces=[
{"min": 1, "max": 99, "label": "1~99人", "color": "#CCFFFF"},
{"min": 100, "max": 999, "label": "100~9999人", "color": "#FFFF99"},
{"min": 1000, "max": 4999, "label": "1000~4999人", "color": "#FF9966"},
{"min": 5000, "max": 9999, "label": "5000~99999人", "color": "#FF6666"},
{"min": 10000, "max": 99999, "label": "10000~99999人", "color": "#CC3333"},
{"min": 100000, "label": "100000+", "color": "#990033"},
]
)
) # 绘图
map.render("安徽省疫情地图.html")

实现效果如下:

Python数据可视化-地图可视化的更多相关文章

  1. 【实战】通过Python实现疫情地图可视化

    目录 一. json模块 二.通过Python实现疫情地图可视化 2.将json格式的数据保存到Excel 3.应用pyecharts进行数据可视化 一. json模块 JSON(JavaScript ...

  2. [数据分析与可视化] Python绘制数据地图2-GeoPandas地图可视化

    本文主要介绍GeoPandas结合matplotlib实现地图的基础可视化.GeoPandas是一个Python开源项目,旨在提供丰富而简单的地理空间数据处理接口.GeoPandas扩展了Pandas ...

  3. Python数据可视化——使用Matplotlib创建散点图

    Python数据可视化——使用Matplotlib创建散点图 2017-12-27 作者:淡水化合物 Matplotlib简述: Matplotlib是一个用于创建出高质量图表的桌面绘图包(主要是2D ...

  4. Python数据可视化编程实战pdf

    Python数据可视化编程实战(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1vAvKwCry4P4QeofW-RqZ_A 提取码:9pcd 复制这段内容后打开百度 ...

  5. 【python可视化系列】python数据可视化利器--pyecharts

    学可视化就跟学弹吉他一样,刚开始你会觉得自己弹出来的是噪音,也就有了在使用python可视化的时候,总说,我擦,为啥别人画的图那么溜: [python可视化系列]python数据可视化利器--pyec ...

  6. python数据可视化:pyecharts

    发现了一个做数据可视化非常好的库:pyecharts.非常便捷好用,大力推荐!! 官方介绍:pyecharts 是一个用于生成 Echarts 图表的类库.Echarts 是百度开源的一个数据可视化 ...

  7. python数据可视化编程实战PDF高清电子书

    点击获取提取码:3l5m 内容简介 <Python数据可视化编程实战>是一本使用Python实现数据可视化编程的实战指南,介绍了如何使用Python最流行的库,通过60余种方法创建美观的数 ...

  8. Python数据可视化编程实战——导入数据

    1.从csv文件导入数据 原理:with语句打开文件并绑定到对象f.不必担心在操作完资源后去关闭数据文件,with的上下文管理器会帮助处理.然后,csv.reader()方法返回reader对象,通过 ...

  9. Python数据可视化-seaborn库之countplot

    在Python数据可视化中,seaborn较好的提供了图形的一些可视化功效. seaborn官方文档见链接:http://seaborn.pydata.org/api.html countplot是s ...

  10. 【数据科学】Python数据可视化概述

    注:很早之前就打算专门写一篇与Python数据可视化相关的博客,对一些基本概念和常用技巧做一个小结.今天终于有时间来完成这个计划了! 0. Python中常用的可视化工具 Python在数据科学中的地 ...

随机推荐

  1. 整合SpringBoot + Dubbo + Nacos 出现 Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass

    版本 SpringBoot:2.7.3 Dubbo:3.0.4 Nacos:2.0.3 异常信息如下 Unable to make protected final java.lang.Class ja ...

  2. SpringBoot项目整合微信登录

    一.开通微信登录 去微信开发者平台 1.注册 2.邮箱激活 3.完善开发者资料 4.开发者资质认证 准备营业执照,1-2个工作日审批.300元 5.创建网站应用 6.提交审核,7个工作日审批 7.熟悉 ...

  3. 【2020】装了VirtualBox后VMware Workstation无法使用SSH连接Centos的解决方法

    装了个VirtualBox,然后发现无法使用Xshell远程Vmware中的centos了,一开始感觉是虚拟网卡冲突了,发现把VirtualBox的虚拟网卡禁用就可以使用,但是好麻烦啊??每次我特么要 ...

  4. ASR项目实战-构建Kaldi

    准备工作 安装构建时依赖的基础软件 软件清单如下: bzip2 python3 automake libtool cmake gcc g++ gfortran git subversion 不同平台安 ...

  5. ElasticSearch之查看集群的参数

    参考Cluster get settings API. 命令样例,不指定参数,如下: curl -X GET "https://localhost:9200/_cluster/setting ...

  6. 华硕AX系列路由器选购,以及华硕WIFI6路由器智能设备家电无法互联的解决方法。

    家里昨天换了一整套wifi6路由器(华硕AX82U+XD4R),刚刚换上就发现原来的欧普智能灯和部分其他设备无法使用了,而小米等设备等都可以互联,智能家居绝大部分用的是2.4G的协议,所以说,问题出现 ...

  7. 使用Bot Framework建立你的第一个聊天机器人

    今天微软给我推送了一个邮件,大概是微软近期开发了很多人工智能相关的API,无意中看到了Bot Framework,就点进去看了看似乎还蛮有意思的.于是准备搭建一个环境试试. 第一步需要下载Bot Ap ...

  8. zabbix_agent配置文件

    agent常用参数 : [root@jqebsdb zabbix]# cat zabbix_agentd.conf  | grep -v ^$ | grep -v ^# PidFile=/var/ru ...

  9. 前端系列:正则表达式RegExp详解

    目录 正则创建 匹配方法 元字符 字符集合 边界 分组 数量词汇 匹配模式 RegExp 方法特性 正则创建 字面量创建 const str = 'asdf123sds3234' const rege ...

  10. 复杂查询so easy ,GaussDB(for Cassandra)推Lucene引擎全新解决方案

    摘要:复杂查询so easy!GaussDB(for Cassandra)新特性来袭. 本文分享自华为云社区<来了!GaussDB(for Cassandra)新特性亮相>,作者:Gaus ...