把一些地域性比较明显的数据显示在一张地图上,远比给别人一个 Excel 文件好得多。
Matplotlib 中也有画地图的函数,但是是静态图,因此这里主要讲Pyecharts 模块中的画图功能。
安装Pyecharts
方法一:pip install ...
方法二:conda install -c anaconda pyecharts
方法三:下载模块–安装
- https://pypi.org/project/pyecharts/0.1.9.4/#files下载模块;
- 将模块放进 xx 路径中,比如(C:ProgramDataAnaconda3Scripts);
- 打开cmd 进入 xx 路径中,(cd C:ProgramDataAnaconda3Scripts);
- 安装,
pip install pyecharts-0.1.9.4-py2.py3-none-any.whl
;
安装对应的地图拓展:
代码语言:javascript复制$ 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
准备数据
数据大概是下表这样的,一共110条数据。
Country | Province | City | Score | Province_1 | mean_score |
---|---|---|---|---|---|
China | 上海 | 上海 | 98 | 安徽 | 45 |
China | 北京 | 北京 | 96 | 北京 | 96 |
China | 广西 | 崇左 | 15 | 福建 | 63 |
China | 内蒙古 | 兴安盟 | 94 | 甘肃 | 23 |
使用 pyecharts 模块中的 Geo 函数:
Geo 地理坐标系组件用于地图的绘制,支持在地理坐标系上绘制散点图,线集。
geo.add(name, attr, value, type=”scatter”, maptype=’china’, coordinate_region=’中国’, symbol_size=12, border_color=”#111″, geo_normal_color=”#323c48″, geo_emphasis_color=”#2a333d”, geo_cities_coords=None, is_roam=True, **kwargs)
常用参数说明:
参数 | 接收值 | 说明 |
---|---|---|
name | str | 图例名称 |
attr | list | 属性名称 |
value | list | 属性所对应的值 |
type | str | 图例类型,有’scatter’,’effectScatter’,’heatmap’可选。默认为’scatter’ |
maptype | str | 地图类型 |
coordinate_region | str | 城市坐标所属国家 |
symbol_size | int | 标记图形大小。默认为12 |
border_color | str | 地图边界颜色。默认为’#111′ |
geo_normal_color | str | 正常状态下地图区域的颜色。默认为’#323c48′ |
geo_emphasis_color | str | 高亮状态下地图区域的颜色。默认为’#2a333d’ |
geo_cities_coords | dict | 用户自定义地区经纬度,类似如{‘阿城’:[126.58,45.32],}这样的字典。 |
is_roam | bool | 是否开启鼠标缩放和平移漫游。’scale’缩放、’move’平移、’True’都开启;默认为True。 |
Geo 函数的使用:
代码语言:javascript复制import pandas as pd
from pyecharts import Geo
#读取数据
datafile = u'D:pythondatatraveltravel_data.xlsx'
data = pd.read_excel(datafile)
attr = data['City']
value = data['Score']
geo = Geo("♡♡♡ 往后余生,踏遍山河 ♡♡♡", title_color="#2E2E2E",
title_text_size=24,title_top=20,title_pos="center", width=1300,height=600,
background_color='#F6CEF5')
geo.add("", attr, value, type="effectScatter", is_random=True, visual_range=[0, 100],
maptype='china',visual_text_color="#FF0000", geo_normal_color="#6E6E6E",geo_emphasis_color='#F5D0A9',
symbol_size=8, effect_scale=5, is_visualmap=True)
geo.render(path=u'D:pythondatatravel往后余生.html')#生成html文件
没有报错就是运行成功了,去 path 路径中,双击在默认浏览器中打开 html 文件,:
使用 pyecharts 模块中的 map 函数:
map 函数地图主要用于地理区域数据的可视化。
map.add(name, attr, value, maptype=’china’, is_roam=True, is_map_symbol_show=True, **kwargs)
map 函数的使用:
代码语言:javascript复制import pandas as pd
from pyecharts import Map
datafile = u'D:pythondatatraveltravel_data.xlsx'
data = pd.read_excel(datafile)
attr = data['Province_1']
value = data['mean_score']
map = Map("♡♡♡ 往后余生,踏遍山河", title_color="#2E2E2E",
title_text_size=24,title_top=20,title_pos="center", width=1300,height=600,
background_color='#F6CEF5')
map.add("", attr, value, type="effectScatter", is_random=True, visual_range=[0, 100],
maptype='china', geo_emphasis_color='#F5D0A9',visual_text_color="#6E6E6E",
is_visualmap=True, is_map_symbol_show=False)
map.render(path=u'D:pythondatatravel往后余生_map.html')
没有报错就是运行成功了,去 path 路径中,双击在默认浏览器中打开 html 文件,:
Pyecharts说明:http://pyecharts.org/#/zh-cn/charts_base?id=map(地图)
到此这篇关于Pyecharts 动态地图 geo()和map()的安装与用法详解的文章就介绍到这了,更多相关Pyecharts geo()和map() 内容请搜索ZaLou.Cn