pyecharts绘制地图
python 绘制地图
环境准备
1.1 安装必备绘画库
亲身体验,最新版的pyecharts使用不来,通过百度寻得的教学推荐版本 0.1.9.4 可以绘制完成世界地图,国家地图以及市级地图,但是不能绘制县区级的地图,故此实验之下选择 0.5.10 版本,可绘制县区级地图。
安装pyecharts
pip install pyecharts==0.5.10
安装国家、城市、县区的集成库
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
1.2 绘制图形
from pyecharts import Map
1.2.1 绘制世界地图
attr与value是非必传数据,若是不传值,在地图中会是白色的色块,整个地图呈现的是轮廓,传值的情况下,被传值的国家或城市会被上色,更加鲜明的呈现出特征
# 地图数据
attr = ["China", "Canada", "Brazil", "Russia", "United States", 'Libya', 'Australia']
value = [40, 30, 50, 60, 70, 80, 90]
map0 = Map("世界地图示例", width=1600, height=800)
map0.add("世界地图", attr, value, maptype="world", is_visualmap=True, visual_text_color='#000')
map0.render(path="./data/世界地图.html")
1.2.2 绘制中国地图
# 省和直辖市
province_distribution = {'河南': 45.23, '北京': 37.56, '河北': 21, '辽宁': 12, '江西': 6, '上海': 20, '安徽': 10, '江苏': 16, '湖南': 9,
'浙江': 13, '海南': 2, '广东': 22, '湖北': 8, '黑龙江': 11, '澳门': 1, '陕西': 11, '四川': 7, '内蒙古': 3, '重庆': 3,
'云南': 6, '贵州': 2, '吉林': 3, '山西': 12, '山东': 11, '福建': 4, '青海': 1, '天津': 1}
provice = list(province_distribution.keys())
values = list(province_distribution.values())
# maptype='china' 只显示全国直辖市和省级
# 数据只能是省名和直辖市的名称
map = Map("中国地图", '中国地图', width=1600, height=800)
map.add("", provice, values, visual_range=[0, 50], maptype='china', is_visualmap=True, visual_text_color='#000')
# map.show_config()
map.render(path="./data/中国地图.html")
1.2.3 绘制河南地图
# 城市 -- 指定省的城市 xx市
city = ['郑州市', '安阳市', '洛阳市', '濮阳市', '南阳市', '开封市', '商丘市', '信阳市', '新乡市', '许昌市', '三门峡市', '平顶山市']
values2 = [1.07, 3.85, 6.38, 8.21, 2.53, 4.37, 9.38, 4.29, 6.1, 7.21, 9.01, 8.28]
# 数据是省内所属城市名
map2 = Map("河南地图", '河南', width=1600, height=800)
map2.add('河南', city, values2, visual_range=[1, 10], maptype='河南', is_visualmap=True, visual_text_color='#000')
# map2.show_config()
map2.render(path="./data/河南地图.html")
1.2.4 绘制信阳市地图
# 区县 -- 具体城市内的区县 xx县
quxian = ['潢川县', '息县', '浉河区', '平桥区', '光山县', '商城县', '罗山县']
values3 = [3, 5, 7, 8, 2, 4, 1]
# 信阳地图 数据为信阳市下的区县
map3 = Map("信阳地图", '信阳', width=1600, height=800)
map3.add("信阳", quxian, values3, visual_range=[1, 10], maptype='信阳', is_visualmap=True, visual_text_color='#000')
map3.render(path="./data/信阳地图.html")
1.3 所用函数参数介绍
Map的第一个参数是 绘制地图的标题 ,第二个参数是 标题下的说明文字 ,width与height分别是绘制地图所在的区域范围的宽和高
map.add()第一个参数是 绘制地图的标识,当同一区域绘制了不同的地图,可以通过标识展示自己想要的地图 ;
第二个参数是 当前绘制目标的所属城市或县区名称集合,必须是列表形式 ; 第三个参数是 所属城市或县区对应的数值数据,同样必须是列表形式,且必须与第二个参数的长度相同 ; visual_range的参数可以不设置,不设置的情况下根据所传数据的值域进行自适应,同时绘制多个地图时,若所传参数不一致,取最大值 ;maptype是决定绘制的地图是什么,例如:世界地图是‘world’,中国地图是‘china’,河南地图是‘河南’等等 ;is_visualmap是显示上一参数的标识,为true才可以显示地图中的色块展示,为false不显示 ;visual_text_color是标识中的文字颜色。
map.render()传入参数path是绘制地图完成后写入的html文件,后续可以通过文件展示绘制的地图
pyecharts绘制地图的更多相关文章
- pyecharts绘制地图可视化
pyecharts:官方文档 我们这里使用pyecharts模块进行绘图. pyecharts 项目包含了一系列的地理地图数据,这些数据或者已经内置,或者需要额外安装和加载,我们需要下载下面六个包. ...
- 使用ArcGIS API for Silverlight + Visifire绘制地图统计图
原文:使用ArcGIS API for Silverlight + Visifire绘制地图统计图 最近把很久之前做的统计图又拿出来重新做了一遍,感觉很多时候不复习,不记录就真的忘了,时间是最好的稀释 ...
- 利用pyecharts做地图数据展示
首先, pip install pyecharts 为了地图上的数据能显示完全,加载好需要的城市地理坐标数据. pip install echarts-countries-pypkg pip inst ...
- 使用EXCEL绘制三维地图(超简单的五分钟绘制地图方法,妈妈再也不用担心我不会画地图啦~)
博主为从区域规划转行地图学的小学渣一枚,最近处理数据希望对结果进行三维可视化,意外发现从小用到大的EXCEL可以绘制地图且功能非常强大,在这里做一下简单介绍,希望可以给看官提供些许帮助.那下面就开始吧 ...
- 使用Adobe Illustrator + ArcGIS绘制地图 | Map Design Using ArcGIS + Adobe Illustrator
国内GIS/Cartography同行大部分使用CorelDraw绘制地图.相比之下,国外同行则更多使用Adobe Illustrator绘制地图.CorelDraw和Illustrator两个软件均 ...
- SAS学习笔记14 利用SAS绘制地图(二)
笔记9讲过利用SAS绘制地图,这次接着讲 用中国各地(不含港澳台)的平均湿度数据来绘制地图 在地图上标出地名 宏%maplabel有9个参数,依次为:地图文件名.包含区域名称的数据集文件.输出的注释数 ...
- twoway 系列命令绘制地图
twoway 系列命令绘制地图 ❝ 在谈到用stata绘制地图时,很多人首先想到的是spmap命令.其实,最常见的twoway系列命令就可以完成我们的大多数绘图需求. 对于spmap命令的使用,在线资 ...
- Python pyecharts绘制柱状图
本文摘抄至https://05x-docs.pyecharts.org/#/zh-cn/charts_base?id=bar%ef%bc%88%e6%9f%b1%e7%8a%b6%e5%9b%be%e ...
- Python pyecharts绘制饼图
一.pyecharts绘制饼图语法简介 饼图主要用于表现不同类目的数据在总和中的占比.每个的弧度不是数据量的占比pie.add()方法的用法add(name, attr, value, radius= ...
随机推荐
- Evevt Loop 事件循环
目录 JavaScript 是一门单线程的语言 一.什么是event Loop的执行机制 练习 异步任务-setTimeout 练习1: 练习2: 练习3: 练习4: 二 事件队列作用 同步任务 例1 ...
- Java修炼——反射机制
反射机制常见的作用: 1) 动态的加载类.动态的获取类的信息(属性,方法,构造器) 2) 动态构造对象 3) 动态调用类和对象的任意方法.构造器 4) 动态调用和处理属性 5) 获取泛型信息 6) 处 ...
- [TimLinux] Python 再谈装饰器
参考链接:https://stackoverflow.com/questions/739654/how-to-make-a-chain-of-function-decorators 1. 函数对象 能 ...
- HDU5470 Typewriter (SAM+单调队列优化DP)
Typewriter Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Tota ...
- 国内下载vscode速度慢解决
找到对应的文件,点击下载,会出现一个类似下面的链接: https://az764295.vo.msecnd.net/stable/f06011ac164ae4dc8e753a3fe7f9549844d ...
- nmap扫描、信息收集(网安全实训第一天)
本期内容:网站信息收集.nmap扫描 1. 信息收集 2. nmap扫描1.信息收集 (1)确定目标 首先,我们确定攻击目标,在这里,我们随便找一个网站做测试,我以码云为例. (2)nslookup查 ...
- 【重温基础】17.WebAPI介绍
本文是 重温基础 系列文章的第十七篇. 今日感受:挑战. 系列目录: [复习资料]ES6/ES7/ES8/ES9资料整理(个人整理) [重温基础]1-14篇 [重温基础]15.JS对象介绍 [重温基础 ...
- 使用mongoshake进行oplog同步读取,解决乱码问题
mongoshake 是个开源的用户mongo数据迁移和同步的工具,支持往各种目标源头写数据 具体:https://github.com/alibaba/MongoShake 有业务场景想把oplog ...
- DevExpress的GridControl的使用以及怎样添加列和绑定数据源
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- Android JSON解析插件
JSON是一种轻量级的数据格式,用于数据的交互. Android交互数据主要两种方式:JSON和 XML.XML格式比JSON格式数量略大,所以大多都使用Json数据格式. 在Android开发的过程 ...