爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: river

[图形美化] 任意两点间斜剖面做法总结【利用GRADS自带函数】

  [复制链接]

新浪微博达人勋

发表于 2017-6-15 07:39:33 | 显示全部楼层
这个必须要支持一下了
lz说的很详细,很实用
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-6-15 09:23:27 | 显示全部楼层
土豆笑公主 发表于 2017-6-14 17:39
请问,如果需要画的资料x,y方向上的格点都是0.018度的话,是不是地形数据也需要插值为0.018度?Z方向的层 ...

嗯,最好是分辨率一致,Z方向向上的层次也是一致比较好的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-15 10:06:22 | 显示全部楼层
river 发表于 2017-6-15 09:23
嗯,最好是分辨率一致,Z方向向上的层次也是一致比较好的

请问re()插值函数具体应该怎么使用呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-15 10:22:22 | 显示全部楼层
土豆笑公主 发表于 2017-6-15 10:06
请问re()插值函数具体应该怎么使用呢

我刚试了一下,插值为间隔是0.018的不行,是不是间隔需要是整数?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-15 21:24:08 | 显示全部楼层
顶一个,正在看怎么修改,还准备把数据输出出来,来看看,谢谢大神~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-6-15 22:12:55 | 显示全部楼层
土豆笑公主 发表于 2017-6-15 10:22
我刚试了一下,插值为间隔是0.018的不行,是不是间隔需要是整数?

可能是,我试了0.1是可以的,但是0.01就内存不够了,直接闪退了。所以你这个分辨率太小了。你的资料应该是模式资料吧,模式资料一般自己都有地形输出的吧
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-18 18:32:30 | 显示全部楼层
river楼主好,按照您提供的绘图程序,画U和Omga图,但出现的是真色图,实验数天也无法实现环流图,还烦请指导为盼,多谢。
附上gs文件
'reinit'
*'enable print f:\ly\1.gmf'
'open d:\ice\grads\omega_subhigh_strong.ctl'
'open d:\ice\grads\u_subhigh_strong.ctl'
'open d:\ice\grads\v_subhigh_strong.ctl'
'open d:\ice\grads\hgta_subhigh_strong.ctl'
'open d:\ice\grads\ncep_land\orog.ctl'
'set grads off'
'set grid off'
'set csmooth on'
'set map 15 1 9'
'set parea 1 10.2 1.5 8'
'set xlopts 1 6 0.14'
'set ylopts 1 6 0.14'
'set font 0'
'set zlog on'
'set t 1'
lon1=70.0
lon2=160.0
lat1=20.0
lat2=40.0
'define alfa=atan2('lat2-lat1','lon2-lon1')'
'set x 1'
'set y 1'
'set z 1 12'
*'set lev 1000 850 700 600 500 400 300 200 150 100'
*'set lev 1000 850 700 600 500 400 300 200 150 100'
*'set t 1'
lon=lon1
*'collect 1 free'
'collect 2 free'
'collect 3 free'
while(lon<=lon2)
lat=lat1+(lat2-lat1)*(lon-lon1)/(lon2-lon1)
*'collect 1 gr2stn(-om.1*100,'lon','lat')'
*'collect 2 gr2stn(u.2*cos(alfa)-v.3*sin(alfa),'lon','lat')'
'collect 2 gr2stn(u.2*cos(alfa)-om.1*100,'lon','lat')'
'collect 3 gr2stn(orog.5(t=1),'lon','lat')'
lon=lon+1
endwhile
*---------输出图形------------
'set lon 40 160'
'set lev 1000 100'
'set ylevs 1000 925 850 700 600 500 400 300 200 100'
'set xlabs 40N,70E|35N,80E|30N,110E|25N,140E|20N,160E'
'set gxout shaded'
'set csmooth on'
'set clab off'
'set clevs 0'
'set ccols 0 5 0'
'd coll2gr(3,-u)'
'set gxout vector'
'set strsiz 0.3'
'set arrscl 5. 10'
'set arrowhead 0.03'
*'set gxout stream'
'set ccols 0 '
'set clab on'
*'d maskout(coll2gr(2,-u),-coll2gr(3,-u));maskout(coll2gr(1,-u),-coll2gr(3,-u));mag(coll2gr(2,-u),coll2gr(1,-u))'
*;maskout(coll2gr(1,-u),-coll2gr(3,-u));mag(coll2gr(2,-u),coll2gr(1,-u))'
'd maskout(coll2gr(2,-u),-coll2gr(3,-u))'
*'d coll2gr(2,-u)'
'draw title along (40N,70E) to (20N,160E)'
'printim d:\ice\hgt\anypoumian.gif white'
*'printim d:\ice\hgt\anypoumian'% pentad % '_newn.gif white'
say 'ok'

'c'
anypoumian.gif
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-18 18:51:01 | 显示全部楼层
66666666
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2017-6-18 21:32:15 | 显示全部楼层
shows 发表于 2017-6-18 18:32
river楼主好,按照您提供的绘图程序,画U和Omga图,但出现的是真色图,实验数天也无法实现环流图,还烦请指 ...

你都注释掉了,怎么出矢量图?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-18 22:05:49 | 显示全部楼层
river 发表于 2017-6-18 21:32
你都注释掉了,怎么出矢量图?

根据您的提示,将注释的内容打开,但出来的图只有下面一部分。附图
程序:
'reinit'
*'enable print f:\ly\1.gmf'
'open d:\ice\grads\omega_subhigh_strong.ctl'
'open d:\ice\grads\u_subhigh_strong.ctl'
'open d:\ice\grads\v_subhigh_strong.ctl'
'open d:\ice\grads\hgta_subhigh_strong.ctl'
'open d:\ice\grads\ncep_land\orog.ctl'
'set grads off'
'set grid off'
'set csmooth on'
'set map 15 1 9'
'set parea 1 10.2 1.5 8'
'set xlopts 1 6 0.14'
'set ylopts 1 6 0.14'
'set font 0'
'set zlog on'
lon1=70.0
lon2=160.0
lat1=20.0
lat2=40.0
'define alfa=atan2('lat2-lat1','lon2-lon1')'
'set x 1'
'set y 1'
'set z 1 12'
'set lev 1000 850 700 600 500 400 300 200 150 100'
'set t 1'
lon=lon1
*'collect 1 free'
'collect 2 free'
'collect 3 free'
while(lon<=lon2)
lat=lat1+(lat2-lat1)*(lon-lon1)/(lon2-lon1)
'collect 1 gr2stn(-om.1*100,'lon','lat')'
*'collect 2 gr2stn(u.2*cos(alfa)-v.3*sin(alfa),'lon','lat')'
'collect 2 gr2stn(u.2*cos(alfa)-om.1*100,'lon','lat')'
'collect 3 gr2stn(orog.5(t=1),'lon','lat')'
lon=lon+1
endwhile
*---------输出图形------------
'set lon 40 160'
'set lev 1000 100'
'set ylevs 1000 925 850 700 600 500 400 300 200 100'
'set xlabs 40N,70E|35N,80E|30N,110E|25N,140E|20N,160E'
'set gxout shaded'
'set csmooth on'
'set clab off'
'set clevs 0'
'set ccols 0 5 0'
'd coll2gr(3,-u)'
'set strsiz 0.3'
'set arrscl 5. 10'
'set arrowhead 0.03'
'set gxout vector'
'set gxout stream'
'set ccols 0 '
'set clab on'
'd maskout(coll2gr(2,-u),-coll2gr(3,-u));maskout(coll2gr(1,-u),-coll2gr(3,-u));mag(coll2gr(2,-u),coll2gr(1,-u))'
'draw title along (40N,70E) to (20N,160E)'
'printim d:\ice\hgt\anypoumian.gif white'
*'printim d:\ice\hgt\anypoumian'% pentad % '_newn.gif white'
say 'ok'
'c'
;

anypoumian.gif
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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