Python+matplotlib+scipy站点数据绘制气象分布图
站点数据绘制气象分布图
数据集任意,本随笔只记录方法,不多请确保数据集中包含以下几个属性(站点编号no且假设有n个,站点经度longitude,站点纬度latitude,站点观测数据data)
1. 取站点经纬度:lon,lat
2. 取站点的观测数据集:data (这个数据维度与站点数量同,即1*n)
3.插值准备:
(1)准备两个列表用于构造网格矩阵:
olon = np.linspace(108,115,97)
olat = np.linspace(24,31,97)
(2)构造网格矩阵
olon,olat = np.meshgrid(olon,olat)
4. 做插值:(需要到入Rbf函数:from scipy.interpolate import Rbf)
func = Rbf(lon,lat,data,function=‘linear‘) rain_data_new = func(olon,olat)
5. 经纬度与地图比例做映射:
xx,yy = m(olon,olat)
6. 上色:
c = m.contourf(xx,yy,rain_data_new)
7. 添加色标:
m.colorbar(c)
另,效果图展示:(尚未做白化处理)
文章来自:https://www.cnblogs.com/thisyan/p/9729123.html