爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 13361|回复: 14

MeteoInfoLab脚本示例:双Y轴,纬度平均,经度剖面图(叠加地形)

[复制链接]

新浪微博达人勋

发表于 2017-10-31 00:59:03 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 MeteoInfo 于 2017-10-31 10:28 编辑

这里给出一个:利用欧洲中心下的w变量,指定纬度平均的经度剖面图,然后叠加该区域的地形剖面,最后使用类似NCL的双Y轴(气压和高度)绘制,
结果如下图所示:
TIM截图20171101232423.png

具体脚本如下:

  1. f = addfile(r'H:\test\data\test.nc')
  2. tdata = f['w'][0,:,'35:50',:]
  3. tdata = mean(tdata,axis=1)
  4. tdata = tdata[::-1,:]

  5. lev1 = tdata.dimvalue(0)
  6. lev1=lev1[::-1]
  7. lev2 = meteo.pressure_to_height_std(lev1)
  8. lev2 = lev2[:]/1000
  9. tdata.setdimvalue(0, lev2)

  10. fn1 = addfile(r'H:\alldata\dixing/elev.0.5-deg.nc')
  11. height=fn1['data']['35:50',:]
  12. height = mean(height,axis=0)
  13. height = height/1000
  14. x= fn1['lon'][:]

  15. ax1=axes()
  16. levs = arange(-0.12,0.14,0.02)
  17. layer = contourf(tdata,levs)
  18. fill_between(x,height,color='gray')
  19. plot(x,height,color='k')
  20. yaxis(tickin=False,tickfontsize=17)
  21. xaxis(tickin=False,tickfontsize=17)
  22. yaxis(location='right',tickin=True,tickfontsize=18)
  23. yticks(tdata.dimvalue(0), lev1)
  24. xlim(70,140)
  25. ylim(lev2.min(),12.001)
  26. ylabel('Hpa',fontsize=18)
  27. xlabel('')
  28. colorbar(layer,orientation='horizontal',aspect=35)

  29. ax2 = twinx(ax1)
  30. ylim(lev2.min(),12.001)
  31. yaxis(location='right',tickin=False,tickfontsize=18)
  32. ylabel('Hight(km)',fontsize=18,bold=False)
  33. antialias(True)


评分

参与人数 1威望 +5 金钱 +10 贡献 +4 体力 +50 收起 理由
MeteoInfo + 5 + 10 + 4 + 50 很给力!

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-10-31 10:28:38 | 显示全部楼层
已放入脚本汇总帖。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-10-31 11:26:55 | 显示全部楼层
非常好  点赞
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-10-31 11:30:33 | 显示全部楼层
{:eb502:}{:eb502:}{:eb502:}{:eb502:}
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-10-31 12:06:14 | 显示全部楼层
安定老师和王老师都是本版的高人,更是热心肠的人,本版的类似于我的有福气了。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-10-31 15:44:09 | 显示全部楼层
  1. #Get file names
  2. # coding=utf-8
  3. fn = addfile('F:\wfl\MeteoInfoJS/wrf_allfields_d02_2013_07_29.ctl')
  4. u = fn['U'][10,:,'28.0:28.0',:]
  5. w = fn['W'][10,:,'28.0:28.0',:]
  6. speed=sqrt(u*u+w*w)
  7. #w=w*20
  8. lev1 = u.dimvalue(0)
  9. lev2= meteo.p2h(lev1)
  10. #lev2 = meteo.pressure_to_height_std(lev1)
  11. lev2=lev2/1000
  12. u.setdimvalue(0, lev2)
  13. w.setdimvalue(0, lev2)
  14. layer=quiver(u,w,speed,15,size=10)
  15. xlim(119,122.5)
  16. ylim(0,12)
  17. colorbar(layer)
复制代码


我这样绘图,流线没有显示呀,只有色标,怎么回事?
QQ图片20171102141203.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-11-1 10:17:20 来自手机 | 显示全部楼层
谢谢楼主分享~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-11-2 13:25:41 | 显示全部楼层
谢谢分享!图很漂亮
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-11-22 16:28:48 | 显示全部楼层
为安老师打call
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-11-29 17:35:44 | 显示全部楼层
请问MeteoInfoLab有能把sigma坐标直接转换为P坐标或者高度的函数吗
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表