我有另一个问题,有一个包二者降水数据考虑山脉和海洋?到目前为止,我已经使用了Numpy和基础图,但在代码中可以看到,数据来自欧洲影响数据从北美!这扭曲的结果,必须不惜一切代价阻止。
(我知道我插值是非常简化)
进口matplotlib。pyplot一样plt进口numpy np来自mpl_toolkits scipy.interpolate griddata导入。技术从matplotlib进口技术。颜色从matplotlib进口LinearSegmentedColormap。补丁导入路径,PathPatch #数据坐标和值x = np.array ((6.47, 4.8, 1.94, -4.57, 5.78, 3.95, 5.45, 0.38, 7.13, 12.43, 11.59, -1.083333333, -60.996, -83.144]) y = np.array ((46.37, 43.9, 47.83, 48.36, 44.95, 43.57, 43.45, 43.12, 43.92, 51.35, 48.22, 52.88333333, 50.958, 37.02]) z = np.array((-29.5, -27.6, -32.5, -32.4, -16.0, -0.1, -12.3, -15.2, -36.2, -20.6, -38.2, -38.2, -2.0, -4.0]) #目标网格插入ξ= np。论坛(-100、100、1、dtype = ' float64 ') = np。论坛(-100100年,1,dtype = float64) xi,彝族= np。meshgrid (xi, yi) #插入子= griddata (x, y, z, (xi, yi)方法=“立方”)无花果、ax = plt.subplots (figsize = (10,10)) m =基础图(llcrnrlon = x.min (-0.1), llcrnrlat = y.min (-0.1), urcrnrlon = x.max () + 0.1, urcrnrlat = y.max() + 0.1,投影=“芝加哥”,决议=“h”, area_thresh = 1000, ax = ax) m.drawcoastlines() #在地图上绘制海岸线x, y = m (xi, yi) #地图坐标转换成c = ax扩展。子contourf (x, y, np。linspace(-40 0),延长=‘都’,提出=“喷气机”)#情节上的数据地图。plt。散射(x, y) plt.show ()
哦,如果有人知道我从Numpy可以删除这些meshgrid点,我会非常高兴一个简短的答案,因为这我不知为何没有发现(我自己觉得很奇怪)
编辑:通常海洋覆盖着一个面具,但这将使代码太长
佛
吗?更合适的比griddata
你正在做的事情。我建议更换基础图
弃用,cartopy
。 \ endgroup美元