爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
楼主: 传说中的谁

[分享资料] maskout方法的使用以及maskout文件制作

  [复制链接]
发表于 2013-12-12 17:54:25 | 显示全部楼层
本帖最后由 半个瞎子 于 2013-12-12 20:45 编辑

请问楼主,我用自己输出的全国的maskout画图总是提示:
ga-> run d_mo_rain.gs
No hardcopy metafile open
All files closed; all defined objects released;
All GrADS attributes have been reinitialized
Error in gagchk: one axis is linear and the other is non-linear
Operation error:  Incompatable grids
Operation Error:  Error from maskout function
  Error ocurred at column 1
DISPLAY error:  Invalid expression
  Expression = maskout(rain,a)
Cannot plot color bar: No shading information

意思是数据文件的ctl里xdef和ydef是非线性的,而maskout的ctl文件里是线性的,数据文件是WRF后处理生成的,只能是非线性的了,请问楼主该如何解决呢?先谢谢楼主。
我的gs文件:
'reinit'
'open ../201308_mon_RAIN.ctl'
'open ./China.ctl'
'set gxout shaded'
'set mpdset cnworld'
'define a=mask.2'
'Set parea 1 9,5 0,5 8'
'./rb_matlab.gs'
'd maskout(RAIN,a)'
'draw title 2013-08_MON RAIN (mm)'
'./cbar_matlab 5 1 1'
'printim ../201308_mon_RAIN.png png white'

maskout的ctl文件:
DSET ./China.dat
TITLE Mask data
UNDEF -9999
XDEF 359 LINEAR 74.11332 0.1557915
YDEF 299 LINEAR 16.43414 0.123431
ZDEF 1 LINEAR 1 1
tdef   1  linear 00Z01AUG2013     1Mo
VARS 1
mask 0 99  background mask data
ENDVARS

数据描述文件.ctl:
dset ^201308_mon_RAIN.dat
undef 1.e30
title  OUTPUT FROM WRF V3.4 MODEL
xdef  359 levels
74.11331940
74.26911163
74.42490387
74.58068848
74.73648071
74.89227295
……

ydef  299 levels
16.43414307
16.58351135
16.73276520
16.88190269
17.03092384
17.17982101
……

zdef   19 levels  
1000.00000
950.00000
900.00000
850.00000
……

tdef   1  linear 00Z01AUG2013     1Mo      
VARS    1
RAIN          1  0  ACCUMULATED TOTAL CUMULUS PRECIPITATION (mm)
ENDVARS

有点长,辛苦大神了,再次谢过。
密码修改失败请联系微信:mofangbao
发表于 2013-12-12 21:11:19 | 显示全部楼层
照这方法做咯。gs编写里阴影图和等值线的位置的设置也与帖子的差不多,,但为什么阴影图画出来咯。可是没有等值线及等值线的值。。。急需解救。谢谢各路高手
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2013-12-12 21:27:31 | 显示全部楼层

sorry,我也没做过非线性格点的能不能先插值成线性格点呢?
密码修改失败请联系微信:mofangbao
发表于 2013-12-12 22:13:45 | 显示全部楼层
传说中的谁 发表于 2013-12-12 21:27
sorry,我也没做过非线性格点的能不能先插值成线性格点呢?

可是这要如何插值呢?不会啊。敢问楼主有方法么?我是直接把maskout里xdef,ydef改为了非线性的,结果证明这个方法是错的。
密码修改失败请联系微信:mofangbao
发表于 2013-12-25 20:37:08 | 显示全部楼层
教程要是再细化点就好了,比如生成文件的分辨率和数据文件的分辨率要不要匹配...........哎哎,挂在GrADS作图了,错了许多天了。
密码修改失败请联系微信:mofangbao
发表于 2013-12-28 15:38:32 | 显示全部楼层
不错,学习了
密码修改失败请联系微信:mofangbao
发表于 2014-1-13 19:20:41 | 显示全部楼层
楼主,我在grads里面如果用了basemap之后只会对我第一个变量去掉边界以外的值,再画其他变量时不会被屏蔽的呀,你这个方法我也试过,如果我们要画的图精度比较低,比如5*5或者是2.5*2.5这样做的方法会在边界周围有很多的空白没有值的地方,这是分辨率造成的,请问你怎么解决?而这样的问题在basemap里面则不存在。
密码修改失败请联系微信:mofangbao
发表于 2014-1-14 18:55:46 | 显示全部楼层
看起来果然比basemap高大上很多啊,关键是图好啊
密码修改失败请联系微信:mofangbao
发表于 2014-1-16 10:35:33 | 显示全部楼层
非常好的帖子,谢谢分享。
密码修改失败请联系微信:mofangbao
发表于 2014-1-28 16:37:06 | 显示全部楼层
也就是说如果是从模式出来的格点数据应用maskout 必须要x,y方向的格点设置和mask'out文件设置一致才可以
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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