利用pyecharts实现地图可视化的例子


Posted in Python onAugust 12, 2019

pyecharts 是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库。用 Echarts 生成的图可视化效果非常棒,pyecharts 是为了与 Python 进行对接,方便在 Python 中直接使用数据生成图。

今天我们就用pyecharts和jupyter notebook实现地图数据的可视化。

pyecharts v0.3.2以后,pyecharts 将不再自带地图 js 文件。如用户需要用到地图图表,可自行安装对应的地图文件包。

下面介绍如何安装。

地图文件被分成了三个 Python 包,分别为:

全球国家地图: echarts-countries-pypkg (1.9MB)

中国省级地图: echarts-china-provinces-pypkg (730KB)

中国市级地图: echarts-china-cities-pypkg (3.8MB)

直接使用python的pip安装:

pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg

这里要提醒大家,一定要注意,安装完地图包以后一定要重启jupyter notebook,不然是无法显示地图的。

安装完毕我们就可以直接画图了。

两个项目:

一、全国主要城市空气质量

from pyecharts import Geo
 
data = [
  ("海门", 9),("鄂尔多斯", 12),("招远", 12),("舟山", 12),("齐齐哈尔", 14),("盐城", 15),
  ("赤峰", 16),("青岛", 18),("乳山", 18),("金昌", 19),("泉州", 21),("莱西", 21),
  ("日照", 21),("胶南", 22),("南通", 23),("拉萨", 24),("云浮", 24),("梅州", 25),
  ("文登", 25),("上海", 25),("攀枝花", 25),("威海", 25),("承德", 25),("厦门", 26),
  ("汕尾", 26),("潮州", 26),("丹东", 27),("太仓", 27),("曲靖", 27),("烟台", 28),
  ("福州", 29),("瓦房店", 30),("即墨", 30),("抚顺", 31),("玉溪", 31),("张家口", 31),
  ("阳泉", 31),("莱州", 32),("湖州", 32),("汕头", 32),("昆山", 33),("宁波", 33),
  ("湛江", 33),("揭阳", 34),("荣成", 34),("连云港", 35),("葫芦岛", 35),("常熟", 36),
  ("东莞", 36),("河源", 36),("淮安", 36),("泰州", 36),("南宁", 37),("营口", 37),
  ("惠州", 37),("江阴", 37),("蓬莱", 37),("韶关", 38),("嘉峪关", 38),("广州", 38),
  ("延安", 38),("太原", 39),("清远", 39),("中山", 39),("昆明", 39),("寿光", 40),
  ("盘锦", 40),("长治", 41),("深圳", 41),("珠海", 42),("宿迁", 43),("咸阳", 43),
  ("铜川", 44),("平度", 44),("佛山", 44),("海口", 44),("江门", 45),("章丘", 45),
  ("肇庆", 46),("大连", 47),("临汾", 47),("吴江", 47),("石嘴山", 49),("沈阳", 50),
  ("苏州", 50),("茂名", 50),("嘉兴", 51),("长春", 51),("胶州", 52),("银川", 52),
  ("张家港", 52),("三门峡", 53),("锦州", 54),("南昌", 54),("柳州", 54),("三亚", 54),
  ("自贡", 56),("吉林", 56),("阳江", 57),("泸州", 57),("西宁", 57),("宜宾", 58),
  ("呼和浩特", 58),("成都", 58),("大同", 58),("镇江", 59),("桂林", 59),("张家界", 59),
  ("宜兴", 59),("北海", 60),("西安", 61),("金坛", 62),("东营", 62),("牡丹江", 63),
  ("遵义", 63),("绍兴", 63),("扬州", 64),("常州", 64),("潍坊", 65),("重庆", 66),
  ("台州", 67),("南京", 67),("滨州", 70),("贵阳", 71),("无锡", 71),("本溪", 71),
  ("克拉玛依", 72),("渭南", 72),("马鞍山", 72),("宝鸡", 72),("焦作", 75),("句容", 75),
  ("北京", 79),("徐州", 79),("衡水", 80),("包头", 80),("绵阳", 80),("乌鲁木齐", 84),
  ("枣庄", 84),("杭州", 84),("淄博", 85),("鞍山", 86),("溧阳", 86),("库尔勒", 86),
  ("安阳", 90),("开封", 90),("济南", 92),("德阳", 93),("温州", 95),("九江", 96),
  ("邯郸", 98),("临安", 99),("兰州", 99),("沧州", 100),("临沂", 103),("南充", 104),
  ("天津", 105),("富阳", 106),("泰安", 112),("诸暨", 112),("郑州", 113),("哈尔滨", 114),
  ("聊城", 116),("芜湖", 117),("唐山", 119),("平顶山", 119),("邢台", 119),("德州", 120),
  ("济宁", 120),("荆州", 127),("宜昌", 130),("义乌", 132),("丽水", 133),("洛阳", 134),
  ("秦皇岛", 136),("株洲", 143),("石家庄", 147),("莱芜", 148),("常德", 152),("保定", 153),
  ("湘潭", 154),("金华", 157),("岳阳", 169),("长沙", 175),("衢州", 177),("廊坊", 193),
  ("菏泽", 194),("合肥", 229),("武汉", 273),("大庆", 279)]
geo = Geo("全国主要城市空气质量", "data from pm2.5", title_color="#fff",
     title_pos="center", width=1000,
     height=600, background_color='#404a59')
attr, value = geo.cast(data)
geo.add("", attr, value, visual_range=[0, 200], maptype='china',visual_text_color="#fff",
    symbol_size=10, is_visualmap=True)
geo.render("全国主要城市空气质量.html")#生成html文件
geo#直接在notebook中显示

结果如下:

利用pyecharts实现地图可视化的例子

二、沧州市图例面积

from pyecharts import Map
districts = ['运河区', '新华区', '泊头市', '任丘市', '黄骅市', '河间市', '沧县', '青县', '东光县', '海兴县', '盐山县', '肃宁县', '南皮县', '吴桥县', '献县', '孟村回族自治县']
areas = [109.92, 109.47, 1006.5, 1023.0, 1544.7, 1333.0, 1104.0, 968.0, 730.0, 915.1, 796.0, 525.0, 794.0, 600.0, 1191.0, 387.0]
map_1 = Map("沧州市图例-各区面积", width=1200, height=600)
map_1.add("", districts, areas, maptype='沧州', is_visualmap=True, visual_range=[min(areas), max(areas)],
    visual_text_color='#000', is_map_symbol_show=False, is_label_show=True)
map_1

利用pyecharts实现地图可视化的例子

最后,附上pyecharts的中文文档地址,感谢作者。http://pyecharts.org

以上这篇利用pyecharts实现地图可视化的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
Jun 12 Python
python交互式图形编程实例(二)
Nov 17 Python
python实现判断一个字符串是否是合法IP地址的示例
Jun 04 Python
TensorFlow 滑动平均的示例代码
Jun 19 Python
python使用matplotlib画饼状图
Sep 25 Python
python使用for循环计算0-100的整数的和方法
Feb 01 Python
彻底理解Python中的yield关键字
Apr 01 Python
python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法
Jul 04 Python
PYTHON如何读取和写入EXCEL里面的数据
Oct 28 Python
解决jupyter运行pyqt代码内核重启的问题
Apr 16 Python
Python数据分析之pandas函数详解
Apr 21 Python
教你如何使用Python实现二叉树结构及三种遍历
Jun 18 Python
django echarts饼图数据动态加载的实例
Aug 12 #Python
python scrapy爬虫代码及填坑
Aug 12 #Python
Python 中的 global 标识对变量作用域的影响
Aug 12 #Python
Python中pymysql 模块的使用详解
Aug 12 #Python
python中类的输出或类的实例输出为这种形式的原因
Aug 12 #Python
对Django 中request.get和request.post的区别详解
Aug 12 #Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 #Python
You might like
深入array multisort排序原理的详解
2013/06/18 PHP
ThinkPHP学习笔记(一)ThinkPHP部署
2014/06/22 PHP
用php代码限制国内IP访问我们网站
2015/09/26 PHP
PHP 的比较运算与逻辑运算详解
2016/05/12 PHP
js里取容器大小、定位、距离等属性搜集整理
2013/08/19 Javascript
javascript抖动元素的小例子
2013/10/28 Javascript
js实现分享到随页面滚动而滑动效果的方法
2015/04/10 Javascript
详解Javascript事件驱动编程
2016/01/03 Javascript
JavaScript学习笔记整理之引用类型
2016/01/22 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
BootStrap数据表格实例代码
2017/09/13 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
JavaScript 性能提升之路(推荐)
2019/04/10 Javascript
一篇文章,教你学会Vue CLI 插件开发
2019/04/17 Javascript
微信小程序云开发修改云数据库中的数据方法
2019/05/18 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
Python 字典dict使用介绍
2014/11/30 Python
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
windows下安装Python和pip终极图文教程
2017/03/05 Python
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
python2.7无法使用pip的解决方法(安装easy_install)
2018/04/03 Python
python查看模块,对象的函数方法
2018/10/16 Python
浅析Python 读取图像文件的性能对比
2019/03/07 Python
pyqt 实现为长内容添加滑轮 scrollArea
2019/06/19 Python
Pandas之MultiIndex对象的示例详解
2019/06/25 Python
使用matplotlib绘制图例标签中带有公式的图
2019/12/13 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
python 调用API接口 获取和解析 Json数据
2020/09/28 Python
英国异国风情旅游网站:Travel Talk Tours(团体旅游、探险旅游、帆船假期)
2018/07/26 全球购物
中学生个人自我评价
2014/02/06 职场文书
推荐信格式要求
2014/05/09 职场文书
十佳中学生事迹材料
2014/06/02 职场文书
从np.random.normal()到正态分布的拟合操作
2021/06/02 Python
NASA 机智号火星直升机拍到了毅力号设备碎片
2022/04/29 数码科技