前些天收到某位大佬的求助,说是需要给根据数据给安徽省地市来绘制个图,用不同颜色来直观表示数据。当时就想到了Python提供一个绘制地图的库—— Pyecharts。
Pyecharts是一个用于生成echarts图表的类库, 它是百度开源的一个数据可视化 JS 库。Echarts详情点击这里。
安装库很简单,大家只要在环境变量里有添加过Python和其pip工具就OK。
pip install Pyecharts
当然有了该库后还不够,需要地图文件,所以以下几个需要按需安装
全球国家地图: echarts-countries-pypkg (1.9MB): 世界地图和 213 个国家,包括中国地图
中国省级地图: echarts-china-provinces-pypkg (730KB):23 个省,5 个自治区
中国市级地图: echarts-china-cities-pypkg (3.8MB):370 个中国城市
中国县区级地图: echarts-china-counties-pypkg (4.1MB):2882 个中国县·区
中国区域地图: echarts-china-misc-pypkg (148KB):11 个中国区域地图,比如华南、华北。
如上使用pip install 命令完成安装即可。
基本应用::基本地图绘制
如果我们需要绘制一副安徽省的地图,并且我们给每个地市一定的数据,让地图在着色上表现出其数据的差异,这时,pyecharts是特别方便的一个应用。
from pyecharts import Map city = ['合肥市', '芜湖市', '宿州市','淮北市','亳州市','阜阳市','蚌埠市','淮南市','滁州市','六安市','马鞍山市','安庆市','铜陵市','宣城市','池州市',"黄山市"] area = [11445.1, 6026.05, 9938.77, 2741.39, 8521.23, 10118.17,5950.72, 5532.30, 13515.99, 15450.82, 4049.13, 13537.96, 2922.60, 12312.55,8398.72, 9678.39] # 绘制地图 map_1 = Map("安徽省图例-各地市面积",title_pos='center',width=1200, height=600) # 地图详细信息 map_1.add("", city, area,maptype='安徽', is_visualmap=True, visual_range=[min(area), max(area)], visual_text_color='black', is_map_symbol_show=False, is_label_show=True) # 输出到当前文件夹下,保存名为 安徽省地图,文件类型为html map_1.render("安徽省地图.html")