Python应用 pyecharts画中国地图
这段时间在爬取了杭州某网站发布的二手房信息,在作图的时候发现在地图呈现上还是有欠缺,这里就把用到的贴出来,提升一下记忆。
之前有接触用Basemap绘制地图,但是在涉及到中国行政划分上感觉不是很方便。Echarts在数据可视化上应用比较广泛,这里采用pyecharts生成echarts风格的图表。
环境:pycharm;python3.6;
1、安装
- pycharts包的安装
pip install pyecharts
- 在绘制地图时,需要导入相应的地图文件包
全球国家地图: echarts-countries-pypkg (1.9MB)
中国省级地图: echarts-china-provinces-pypkg (730KB)
中国市级地图: echarts-china-cities-pypkg (3.8MB)
建议绘图之前就装好,安装方法跟安装工具包的方法一致:
pip install echarts-countries-pypkg;
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
2、绘制地图
from pyecharts import Map
# attr, value要显示的数值
value = [20, 100]
attr = ['余杭区', '萧山区']
# 图框的基本特性
m = Map('杭州地图示例图', width=600, height=400)
# 添加数据到图框中
m.add('', attr, value, maptype=u'杭州', visual_range=[0, 100], is_visualmap=True, visual_text_color='#000')
# show_config() 打印输出图表的所有配置项
m.show_config()
# render() 生成 .html 文件
m.render()
m = Map( title=”“, subtitle=”“, **kwargs) 指定图框基本特性。
m.add(**kwargs)主要用于数据呈现,依次为图例、x, y。
attr: list, 是地级市名的列表,你要对哪个区域进行标注,就写入对应的区域。注意里面的名字要规整,不然后面就标记不成功。
value:list, 是attr各区对应的数值。
maptype=u’杭州’ :指定需要绘制的地区的区域。可以是省级地名,也可以是市级地名。
visual_range=[0,100]:指定地图的颜色范围区间,默认是[0,
100]。这里主要是参考y值的范围,便于生成有颜色差的图形。
is_label_show=True :显示每个点的值xm.show_config(): 会在终端打印出图表文件的所有配置项。
- m.render():默认在当前文件生成一个render.html 文件
通过浏览器打开生成的render.html文件即可看到生成的图形
参考文章:
1、【python可视化系列】python数据可视化利器–pyecharts
2、python的pyecharts绘制各种图表详细(代码)