Matplotlib学习笔记:绘制流线图
目录
气象上常见的矢量图有三种表现形式:箭头图、流线图、风羽图。本文主要介绍流线图的绘制。
与箭头图一样,流线图需要准备两个分量的数据,并绘制地图。
准备数据
请参考箭头图的数据说明,下面绘制850HPa的风场图。
绘制箭头图
Matplotlib提供streamplot
绘制流线图图。使用cartopy为数据添加投影,并绘制地图。
直接使用原始数据绘图速度太慢,最好对数据进行采样。默认设置流线太稀疏,设置density
提高流线的密度。
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
f = plt.figure(figsize=(10, 5))
ax = f.add_subplot(
111,
projection=ccrs.PlateCarree(central_longitude=150)
)
vector_crs = ccrs.PlateCarree()
ax.streamplot(
u_data.lons[::20, ::20], u_data.lats[::20, ::20],
u_data.grid_values[::20, ::20], v_data.grid_values[::20, ::20],
transform=vector_crs,
density=4,
color=u_data.grid_values[::20, ::20],
cmap='autumn'
)
ax.coastlines()
plt.show()
结果如下图所示。