转载: 详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)

Pyecharts绘制全球流向图

pyecharts中文教程官网

目录 

安装对应的python模块

世界地图

中国地图

省市地图

区县地图

热力图

动态流向图


安装对应的python模块

根据 pyecharts使用教程 :

自从 v0.3.2 开始,为了缩减项目本身的体积以及维持 pyecharts 项目的轻量化运行,pyecharts 将不再自带地图 js 文件。如用户需要用到地图图表,可自行安装对应的地图文件包。下面介绍如何安装。

(1)、全球国家地图: echarts-countries-pypkg (1.9MB): 世界地图和 213 个国家,包括中国地图
(2)、中国省级地图: echarts-china-provinces-pypkg (730KB):23 个省,5 个自治区
(3)、中国市级地图: echarts-china-cities-pypkg (3.8MB):370 个中国城市
(4)、中国县区级地图: echarts-china-counties-pypkg (4.1MB):2882 个中国县·区
(5)、中国区域地图: echarts-china-misc-pypkg (148KB):11 个中国区域地图,比如华南、华北

需要这些地图的朋友,可以装 pip 命令行:

pip install echarts-countries-pypkg

pip install echarts-china-provinces-pypkg

pip install echarts-china-cities-pypkg

pip install echarts-china-counties-pypkg

pip install echarts-china-misc-pypkg

pip install echarts-united-kingdom-pypkg

更多的地图数据可查看https://github.com/echarts-maps。

世界地图

from pyecharts import Mapvalue = [95.1, 23.2, 43.3, 66.4, 88.5]
attr = ["China", "Canada", "Brazil", "Russia", "United States"]
map0 = Map("世界地图示例", width=800, height=400)
map0.add("世界地图", attr, value, maptype="world", is_visualmap=True, visual_text_color='#000')
map0.render(path="世界地图.html")

中国地图

from pyecharts import Mapprovince_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,'其他': 1}
provice = list(province_distribution.keys())
values = list(province_distribution.values())
map = Map("中国地图", '中国地图', width=600, height=400)
map.add("", provice, values, visual_range=[0, 50], maptype='china', is_visualmap=True,visual_text_color='#000')
map.render(path="中国地图.html")

省市地图

from pyecharts import Mapmap2 = Map("贵州地图", '贵州', width=600, height=400)
city = ['贵阳市', '六盘水市', '遵义市', '安顺市', '毕节市', '铜仁市', '黔西南布依族苗族自治州', '黔东南苗族侗族自治州', '黔南布依族苗族自治州']
values2 = [1.07, 3.85, 6.38, 8.21, 2.53, 4.37, 9.38, 4.29, 6.1]
map2.add('贵州', city, values2, visual_range=[1, 10], maptype='贵州', is_visualmap=True, visual_text_color='#000')map2.render(path="贵州地图.html")

区县地图

from pyecharts import Map
quxian = ['观山湖区', '云岩区', '南明区', '花溪区', '乌当区', '白云区', '修文县', '息烽县', '开阳县', '清镇市']
values3 = [3, 5, 7, 8, 2, 4, 7, 8, 2, 4]map3 = Map("贵阳地图", "贵阳", width=600, height=400)
map3.add("贵阳", quxian, values3, visual_range=[1, 10], maptype='贵阳', is_visualmap=True)
map3.render(path="贵阳地图.html")

热力图

from pyecharts import Geokeys = ['上海', '北京', '合肥', '哈尔滨', '广州', '成都', '无锡', '杭州', '武汉', '深圳', '西安', '郑州', '重庆', '长沙', '贵阳', '乌鲁木齐']
values = [4.07, 1.85, 4.38, 2.21, 3.53, 4.37, 1.38, 4.29, 4.1, 1.31, 3.92, 4.47, 2.40, 3.60, 1.2, 3.7]geo = Geo("全国主要城市空气质量热力图", "data from pm2.5", title_color="#fff",title_pos="left", width=600, height=400,background_color='#404a59')geo.add("空气质量热力图", keys, values, visual_range=[0, 5], type='effectScatter',visual_text_color="#fff", symbol_size=15,is_visualmap=True, is_roam=True) # type有scatter, effectScatter, heatmap三种模式可选,可根据自己的需求选择对应的图表模式
geo.render(path="全国主要城市空气质量热力图.html")

动态流向图

更新:    pyecharts已更新,更新方法:

pip install  --upgrade pyecharts

中文官网教程:https://pyecharts.org/#/

此内容具体网址:https://pyecharts.org/#/zh-cn/geography_charts?id=geo%ef%bc%9a%e5%9c%b0%e7%90%86%e5%9d%90%e6%a0%87%e7%b3%bb

根据此方法获得的图示动态的,如果需要动态插入文章中可以制成GIF图片,我的制作方法是利用EV录屏软件录制一个动态周期的视频,然后在利用 动态图(GIF)制作方法这个网址,绘制此gif图片。当然如果你能保证每次截取的图片大小一样,可以直接多截几张图,利用一些网站,将图片合成gif也行。

绘图代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2020/2/23 13:13
# @Author  : ystraw
# @Site    :
# @File    : t3.py
# @Software: PyCharm Community Edition
# @function: 绘制城市动态流向图# 导入Geo包,注意1.x版本的导入跟0.x版本的导入差别
# 更新方法:pip install  --upgrade pyecharts
from pyecharts.charts import Geo
# 导入配置项
from pyecharts import options as opts
# ChartType:图标类型,SymbolType:标记点类型
from pyecharts .globals import ChartType, SymbolTypegeo = Geo()
# 新增坐标点,添加名称跟经纬度, 也就是当地图中不包含这个地名的坐标时,自己加入!
geo.add_coordinate('新地点', 122.480539, 35.235929)# 地图类型,世界地图可换为world
geo.add_schema(maptype="china")
# 添加数据点
geo.add("",[("北京",10),("上海",20),("广州",30),("成都",40),("哈尔滨",50),("新地点",40)],type_=ChartType.EFFECT_SCATTER)
# 添加流向,type_设置为LINES,涟漪配置为箭头,提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle',
#'diamond', 'pin', 'arrow', 'none'
geo.add("geo-lines",[('北京', '广州'), ('上海', '上海'), ('广州', '成都'),('成都', '哈尔滨'), ('新地点', '哈尔滨')],type_=ChartType.LINES,effect_opts=opts.EffectOpts(symbol=SymbolType.ARROW,symbol_size=10,color="yellow"),linestyle_opts=opts.LineStyleOpts(curve=0.2),is_large=True)
# 不显示标签
geo.set_series_opts(label_opts=opts.LabelOpts(is_show=True))
# 设置图标标题,visualmap_opts=opts.VisualMapOpts()为左下角的视觉映射配置项
geo.set_global_opts(visualmap_opts=opts.VisualMapOpts(),title_opts=opts.TitleOpts(title="城市动态流向图"))
# 直接在notebook里显示图表
geo.render_notebook()
# 生成html文件,可传入位置参数
geo.render("城市动态流向图2.html")

详解python 利用 pyecharts 画地图(热力图)(世界地图,省市地图,区县地图)、动态流向图相关推荐

  1. python从random生成列表_详解Python利用random生成一个列表内的随机数

    详解Python利用random生成一个列表内的随机数 首先,需要导入random模块: import random 随机取1-33之间的1个随机数,可能重复: random.choice(range ...

  2. python修改html内容_详解Python利用Beautiful Soup模块修改内容示例代码

    Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python 库.它能够通过你喜欢的转换器实现惯用的文档导航.查找.修改文档的方式.他还能够修改HTML/XML文档的内容.这篇 ...

  3. python随机生成数字列表_详解Python利用random生成一个列表内的随机数

    首先,需要导入random模块: import random 随机取1-33之间的1个随机数,可能重复: random.choice(range(1,34)) print得到一系列随机数,执行一次得到 ...

  4. 【数据可视化】python/pyecharts 画地图(热力图)(世界地图,省市地图,区县地图)、动态流向图

    按照教程想通过pip下载地图素材,结果如下图所示--不匹配现有的version. upgrade pyecharts之后依旧无法satisfies 在pycharm中输入: import pyecha ...

  5. 详解Python 画蝰蛇(适合初学者)

    详解Python 画蝰蛇(适合初学者) 运行截图 代码 代码片. // An highlighted block import turtle def drawsnake(rad,angle,len,n ...

  6. 详解 Python 源码之对象机制

    在Python中,对象就是在堆上申请的结构体,对象不能是被静态初始化的,并且也不能是在栈空间上生存的.唯一的例外就是类型对象(type object),Python中所有的类型对象都是被静态初始化的. ...

  7. 详解python实现FP-TREE进行关联规则挖掘(带有FP树显示功能)附源代码下载(3)

    详解python实现FP-TREE进行关联规则挖掘(带有FP树显示功能)附源代码下载(3) 上一节简单讲了下FP树的生成,在这一节我将描述FP树的挖掘过程. 首先我们回顾一下要挖掘的特征项及样本空间: ...

  8. 数学建模——智能优化之模拟退火模型详解Python代码

    数学建模--智能优化之模拟退火模型详解Python代码 #本功能实现最小值的求解#from matplotlib import pyplot as plt import numpy as np imp ...

  9. 数学建模_随机森林分类模型详解Python代码

    数学建模_随机森林分类模型详解Python代码 随机森林需要调整的参数有: (1) 决策树的个数 (2) 特征属性的个数 (3) 递归次数(即决策树的深度)''' from numpy import ...

最新文章

  1. python怎么导入时间-Python的import导入与时间
  2. 创建自己的特征和转换器
  3. utorrent设置上传速度_utorrent下载速度慢怎样设置 utorrent常用设置图文教程
  4. 计算机数据库基础知识笔记,计算机基础及技巧(我的电脑笔记,适合新手!包含使用电脑最基本的知识及DOS、网络及数据库等。)...
  5. C#序列化与反序列化详解
  6. eager_EAGER的获取是代码的味道
  7. matplotlib 散点图_python之matplotlib 折线图和散点图
  8. 【Java】Java 8 新特性-----Lambda 表达式
  9. 对比原生Node封装的Express路由 和 express框架路由
  10. 我的MYSQL学习心得(三) 查看字段长度
  11. U盘怎么重装系统到电脑上
  12. 边缘独立(marginal independent)的理解及举例
  13. 数据库sql语句日期查询
  14. 惠普电脑没有insert键怎么办?(按回车不换行,光标到下一行文字处)
  15. 联通发布“沃云”品牌 推出云计算产品
  16. 电脑游戏计算机哪年发明的,电子计算机发明于哪一年
  17. PS新手淘宝美工常见问题-主图和详情尺寸(一)
  18. matlab exm,exm 《Experiments with MATLAB》这本书的程序源码,附中文注释,简单易懂,是学习 238万源代码下载- www.pudn.com...
  19. 自学C++编程,掌握这三项技能就可以工作了
  20. 数字冰雹数字孪生技术助力嫦娥五号探月任务

热门文章

  1. 【Python】在字符串的头尾做文本匹配
  2. html2canvas官网blurry,Why html2canvas produced blurry pdf file?
  3. c# 检测中英输入法_用C#控制当前输入法
  4. 机器人莱克说明书_莱克扫地机器人—莱克扫地机器人的工作原理及分类
  5. 29岁vivo员工吐槽:整理出这份8万字Java性能优化实战解析
  6. android 设置字体大小不随系统大小变化,App字体大小不随系统改变而改变
  7. 虚幻5新特性之EnhancedInput
  8. 9月20日.周日 第一场正式的比赛:2020年CCPC网络赛
  9. 数学建模国赛经验分享
  10. Python 《Python 实现 2048 游戏》实验报告