- 积分
- 56584
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2011-6-21
- 最后登录
- 1970-1-1

|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于格点数据,如果希望获取某个站点周边固定距离范围内的数据,可以以站点坐标为中心生成一个圆图形(Circle),然后利用geolib的maskout函数将圆图形外的格点数据maskout为NaN值,圆图形内部的格点数据保持原值,这样利用maskout后的格点数据进行平均就可以得到圆内部数据的平均值了(NaN数据不参与计算)。示例脚本如下:
 - fn = os.path.join(migl.get_sample_folder(), 'GrADS', 'model.ctl')
- f = addfile(fn)
- ps = f['PS'][0,'10:60','60:140']
- # maskout
- circle = Circle([110,40], 10, facecolor=None)
- ps = geolib.maskout(ps, [circle])
- ps_mean = ps.mean()
- print(ps_mean)
- # plot test
- ax = axesm()
- geoshow('country', edgecolor=(0,0,255))
- ps[ps==nan] = 0 # for plotting
- layer = scatter(ps, cmap='WhBlGrYeRe', edgecolor='gray')
- ax.add_patch(circle)
- title('Maskout with patches')
- yticks([10,30,50])
- colorbar(layer, shrink=0.8)
|
|