爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 48162|回复: 102

个人使用meteoinfo制作区域maskout的小进展

  [复制链接]

新浪微博达人勋

发表于 2012-5-4 22:42:52 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 artmunich 于 2012-5-4 23:02 编辑

我主要依据http://bbs.06climate.com/forum.php?mod=viewthread&tid=893传说中的谁的该篇教材,从前辈这儿直接复制了许多,不知道可不可以(从传说中的谁前辈处复制),结合清风版主的meteoinfo说明和http://bbs.06climate.com/forum.php?mod=viewthread&tid=2754&page=1风行浪尖前辈帖子给了我灵感,捣鼓出来长江中下游地区(六省一市)的maskout(其实我还是不懂maskout为何物,而且不确定正确否,只是插值时全在区域内)。 9.bmp


首先,下载软件(选择最后一项‘meteoinfo软件下载’);
一、(从传说中的谁前辈处复制)
第一步,添加图层,在弹出对话框中选择“bou2_4p.shp打地图文件,将地图文件加载到程序界面中。可以通过缩放来调节地图到你想要的大小。

                               
登录/注册后可看大图

二、(从传说中的谁前辈处复制)
第二步,获取底图ID。在工具栏中选择图元属性,这时候鼠标指针会变成一个“ i ”的形状。单击你要选择的区域,比如广东省,会弹出一个图元属性的窗口,index后面的数字就是你所选择区域的图元ID,如下图右中的“897”

                               
登录/注册后可看大图

                               
登录/注册后可看大图


三、
选择菜单栏中的工具输出地图数据”,弹出的对话框中‘地图图层’为bou2_4p.shp;勾选你要的图元号码(如图我有7个数值),再在数据输出格式选择shape file。会生成cjzxy.dbf,cjzxy.shp,cjzxy.SHX。

                               
登录/注册后可看大图
1.png




四、把添加的图层都移除,同第一步一样打开图层,选择‘其它文件夹’,找到第三步中保存的cjzxy.shp——打开;
[ 3.bmp 4.png
5.png 出现如左图的只有长江中下游六省一市的地图;同样的重复第三步(选择菜单栏中的工具输出地图数据”,弹出的对话框中‘地图图层’为bou2_4p.shp;勾选你要的图元号码(如图我有7个数值),再在数据输出格式选择),只是数据输出格式为‘Grads map file’ (这就是下面gs中的set mpdset cjzxy,该cjzxy是grads地图文件,需要放入E:\GrADS19\dat中)


五、(从传说中的谁前辈处复制)
   制作maskout文件。选择菜单栏中的工具输出地图数据,弹出输出数据的对话框。选择你要的图元(此时应该全选),设置输出格式为GrADS Maskout File,然后点输出后,会弹出一个另存为的对话框,设置好路径、文件名后(这里假设是XX),保存。这是时会弹出一个“Grid Set”对话框,可以设置起始经纬度和分辨率,其中分辨率和格点数只需要设置一项就行,另一项会跟着调整。设置好之后“OK”。如果设置的格点很细(例如0.01,本人的如图采用的0.1,之后为了图美观再调节),则需要较长的时间来生成maskout文件。

                               
登录/注册后可看大图
6.png

(从传说中的谁前辈处复制)然后到你保存文件的目录下看是否成功生成了两个文件xx.datxx.ctl。如果有,则要修改ctl文件。“TDEF 1 LINEAR xxxxxxxxxx”这一行中,改成与数据文件的ctlTDEF相同,建议用笨办法,即把数据文件的描述文件中的这一行复制过来,避免出错。如果两个时间设置不一致,就会出错。


六、开始grads画图
cjz.ctl:
7.PNG

画图用的cjz.gs:
  1. 'reinit'
  2. 'open g:\s\cx\cjz.ctl'  !地图格点描述文件
  3. 'open g:\s\cx\yzfb.ctl' !极端降水阈值数据(即所画图)的描述文件
  4. 'set mpdset cjzxy'
  5. 'set lon 108 123'
  6. 'set lat 24 36'
  7. 'define a=oacres(mask.1,p.2,50,20,10,5,1)'
  8. 'define a1=maskout(a,mask.1-1.0)'
  9. 'define aa=smth9(a1)'
  10. 'set gxout contour'
  11. 'set cmin 24'
  12. 'set clab forced'
  13. 'set cint 3.0'
  14. 'd aa'*'basemap o 0 1'
  15. 'printim g:\s\cx\yzfb11.png white';


最终效果图:
p.s. 这只是尝试,不清楚这种做法是否正确,望指教!!这是我第一次发帖,因为不熟悉,前后折腾了很久。但这是我回报气象家园的一点点努力。





8.bmp
2.png
9.bmp

评分

参与人数 7金钱 +93 贡献 +20 体力 +100 收起 理由
movlan + 1 赞一个!
人生路 + 10
river + 10 + 2 赞一个!
mofangbao + 15 + 5
传说中的谁 + 20 + 5 灰常好!
善人/jw + 22 + 6 赞一个!
artmunich + 15 + 2 + 100 新人发帖,鼓励!

查看全部评分

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

新浪微博达人勋

 楼主| 发表于 2012-7-13 11:17:56 | 显示全部楼层
shangbn305 发表于 2012-7-7 15:39
找到了 O(∩_∩)O~

不好意思,现在才看到帖子~OK就好~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-5-4 23:00:33 | 显示全部楼层
不错~这下齐全了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-5-4 23:05:33 | 显示全部楼层
楼主这个和传说版主那个不同之处在哪里?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-5-5 09:04:09 | 显示全部楼层
artmunich 发表于 2012-5-4 23:05
楼主这个和传说版主那个不同之处在哪里?

多区域成图,直接生成grads地图,画等值线控制在所需区域内,个人认为简便。当然大多数是传说前辈的内容~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-5-5 12:17:18 | 显示全部楼层
非常棒啊!之前总有人问多区域的问题,这下全给解决了,楼主真不错
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2012-5-5 12:19:15 | 显示全部楼层
你的分辨率做的够高啊。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-5-7 08:52:52 | 显示全部楼层
王老师的meteoinfo是很容易上手和操作的,灰常适合我们的日常工作,建议多用!只可惜我不会c,目前也没有时间学!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-7-7 14:18:40 | 显示全部楼层
test1.jpg是我现在做出来的图,底图是china, 但是csv文件是亚洲的数据,我现在只想要中国的,该怎么做呢?我看手册mask那节了,要设置map mask out set 中的setmasklayer那项,没找到这个呢。。。可以帮帮我么?谢谢啦O(∩_∩)O~
test1.jpg
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-7-7 15:39:24 | 显示全部楼层
找到了 O(∩_∩)O~
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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