地图(七)利用python绘制气泡地图
气泡地图(Bubble Map)简介
气泡地图可以在地图上使用不同大小的圆圈来表示区域上的统计数值,还可以通过气泡大小颜色等更为突出的进行信息比较。
快速绘制
-
基于cartopy和matplotlib
import pandas as pd import matplotlib.pyplot as plt import cartopy.crs as ccrs import cartopy.feature as cfeature import pandas as pd import numpy as np # 导入数据 data = pd.read_csv('https://raw.githubusercontent.com/holtzy/The-Python-Graph-Gallery/master/static/data/TweetSurfData.csv', sep=";") # 绘制气泡地图 # 初始布局 fig = plt.figure(figsize=(15,10)) # 背景地图 ax = fig.add_subplot(1, 1, 1, projection=ccrs.PlateCarree()) ax.set_extent([-180, 180, -65, 80], crs=ccrs.PlateCarree()) ax.add_feature(cfeature.LAND, facecolor='grey', alpha=0.3) ax.add_feature(cfeature.OCEAN, facecolor='#A6CAE0') ax.add_feature(cfeature.COASTLINE, linewidth=0.1, edgecolor="white") # 根据大陆为每个点准备一种颜色 data['labels_enc'] = pd.factorize(data['homecontinent'])[0] # 每个位置添加一个点 scatter = ax.scatter( data['homelon'], data['homelat'], s=data['n']/6, alpha=0.4, c=data['labels_enc'], cmap="Set1", transform=ccrs.PlateCarree()) # 著作信息 plt.text( -175, -62,'Where people talk about #Surf\n\nData collected on twitter by @R_Graph_Gallery during 300 days\nPlot realized with Python and the Basemap library', ha='left', va='bottom', size=9, color='#555555' ) plt.show()
总结
以上利用cartopy和matplotlib进行绘制气泡地图。
共勉~