ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:46.55KB ,
资源ID:15090791      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15090791.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(GrADS绘图学习技巧与实例Word文件下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

GrADS绘图学习技巧与实例Word文件下载.docx

1、binary) !固定的用form=binary就是二进制数据open(16,file=sst.txt新建txt文件do it=1,nt do iz=1,nz read(15) (sst(i,j,iz,it),i=1,nx),j=1,ny) !read后只有文件号,数据是无格式的 enddoenddo do iz=1,nz write(16,*) (sst(i,j,iz,it),i=1,nx),j=1,ny) !输出时是txt文件可直接看的数据,有格式输出,有 * close(15)close(16)end 写程序时:注意格点数要与数据对应,如:上程序对应的数据是 经度90200,纬度-206

2、0,时间:1971.012000.12共360个月的海面温度数据,数据格点精度 2*2 ,nx=(200-90)/2+1,ny=(60-(-20)/2+1,nt=360,nz=1,大气的数据要根据数据的层次确定几层。4、 grd 、ctl、gs、nc详述grd文件:grd数据不可直接看,为二进制无格式数据,简单的说只有1和0,而且数据间没有间隔,grads识别grd是根据ctl进行划分的,根据ctl中的经度、纬度、层次、时间,精度进行数据分块。ctl实例:dset C:datasst.grdundef -9.99E+33title sea surface tempturexdef 56 lin

3、ear 90 2ydef 41 linear -20 2tdef 360 linear jan1971 1mozdef 1 levels 0vars 1sst 0 99 surface sea tempture endvars上例数据的数据顺序是(以下是数据对应的经纬度)纬度 经度(t=1)-20 90200的 纬度20S的从90E200的56个数据-18 90200的 纬度18S的从90E200的56个数据.60 90200的 纬度60N的从90E200的56个数据以上为一层的数据,接下来是t=2,t=3t=360的数据,每个时间点的每一层是如上格式,编程时读取和写如的数据循环顺序依次是:时

4、间、层次、纬度、经度,读者参照3中的fortran程序加以理解。ctl文件:具体其他指导书上都有,我这里强调的是 sst 后面的0表示一层,如果是两层以上则是2,3,1层是固定用法,sst后面的99是默认设置;undef -9.99E+33 此处的数值决定了软件将文件中的那些值认定为不绘制的数据,所以这个值一定要与数据对应。gs 文件,批命令文件,与ctl一样是用记事本编写,另存为.gs文件,文件都是命令,方便大段的命令编写、修改,很常用,尤其时绘制的图要求比较多时必须用,免得在命令窗口重复输入命令浪费时间,如下例子:reinitopen c:datauv.ctlset t 7set lev

5、850set grid offset vpage 0 8.5 0 3.6set parea 0.3 8.5 0.3 3.5set gxout vectorset grads offd u;vset vpage 0 8.5 3.6 7.2set gxout barbset vpage 0 8.5 7.2 11set gxout gridprintim c:imagesgxout3uv850.png white; Gs文件以 ;结尾,分号后面不能有空格,除了循环命令外都需要 单引号 将命令引起来。nc文件:此类数据不需要ctl可直接用sdfopen命令直接打开,往往需要知道数据文件中的各个纬度特征

6、,可以用:q ctlinfo 命令查询该文件的内置ctl,这样一切都会很清楚,尤其是数据精度:截图如下(下例即2*2的网格经度):以上为基础知识介绍,以下为技巧命令1、 绘图时,图的时间下标可用 set grads off 命令关掉,网格用 set grid off 命令关掉,需注意的是,网格关一次就一直有效,而下标则是每次绘完图就自动开启,所以建议读者在每次的 绘图命令之前加set grads off 。2、 3、 reinit命令是让窗口恢复到刚打开时的界面,会恢复所有的set,同时关掉所有的打开文件,为为防止前面打开文件的干扰,建议读者在每个gs文件的第一条就加上这条命令(参考gs描述的

7、例子)。4、 5、 数据维度设定: set lon 90 set x 1 set lat 80 set y 20 set lev 1000 set z 1 set t 1 12 set time jan1970 dec1970 上面两种设定等价,左边是实际维度设定法,右边是给点设定法,读者需要确定具体的格点数。需要注意的是,在设定全球尺度时,经度0和360是同一个格点,所以 set 0 360会出错,这时设定格点的方法比较好:set x 1 180。6、 vpage和parea的区别:vapge是对整个绘图区分块,需要几张图就划分成几块,给英寸时不需要给标注、标题预留空间,如:要横着绘制两张图

8、 那么就是set vpage 0 5.5 0 8.5(11*8.5) 绘制第一张图 set vpage 5.5 11 0 8.5 绘制第二张图parea 是描述的绘图时图形的四根边线的大小,而且是虚页的尺寸如:画一张图 set parea 1.0 10.2 0.8 7.8 四个值的范围 取决于vapge的长度01.010.211,如果是上例中的两张图,那么:set parea 0.5 4.8 0.8 7.9,00.54.85.5 ,数值范围取决于水平、垂直的长度,与起点无关如 set vpage 0 11 3.5 7 set parea 0.8 10 0.3 3.2 y上满足00.33.2(7

9、-3.5) 即可,实际y长度决定范围,与起点无关。 5、set annot 5 8set xlopts 3 5 0.18set ylopts 3 5 0.18上面这两条命令是设定的x、y轴下标数字的颜色、粗细、字号是设定坐标轴线、标题的颜色 粗细,会重置xlopts的部分设定,希望读者注意,命令间的互相干扰6、cbar cbarn命令cabr cbarn 这里只讲解cbarn 命令,cbarn sf vert xmid ymid 其中sf 为标尺,1为全尺寸0.5为半尺寸;vert为放置位置,0为水平,1为垂直;xmind 、ymid为色标的中心位置cbarn 0.5 0 2.5 1.5 色标

10、 半尺度长,水平放置,色标的中心英寸坐标(2.5,1.5)。如果只是cabrn或cbar命令,会按照默认的全长,水平或数值取决于图的哪边空位大绘制。强调一点,加色标和加标题都是在绘制出图形后才能加,因为色标是根据阴影图确定对应色值,标题根据图形大小确定标题位置。7、 cmin、cmax是命令是用于绘制大于或小于某数值的线或区域图形,在每次绘图之后会重设,所以如果多次使用一定要每次d之前加上,这点与set grads off相似。8、求12个月每个月的海温距平值set t 1 12asst=ave(sst,t+1404,t=1764,12)modify asst seasonalset time

11、 jan1971d asstset t 1405 1764nasst=sst-asstset time JAN1998d nasstset t 1 12 是设定asst变量有12个时间序列,每个时间格点放一个平面的平均值,asst=ave(sst,t+1404,t=1764,12) 定义变量asst放每个月的平均值,随着t从1变化到12,一次求的每个月的平均值,起始时间是t=1405,终止时间是1764,t=1时,相当于1+13+25+37,即每年的1月份的值求平均(这里t=1+1404=1405是1971年1月,因此是求19712000年每年1月份的平均值),t=2,3.4,,12 与1同理

12、。如此将12个月的平均值都放在了asst里。Modify asst seasonal 本来12个月的平均值知识放在了112的时间序列里,(这里调用的文件数据开始时间是1854年1月),所以asst的值只是在设定112以内才能画出,假了这条命令,可以将asst的时间序列扩展到所有时间里,使得每一年的每个月对应都是该月30年的平均值,方便后面求距平。需要注意的,如果set t 1 4 ,那么这条命令的作用是每年的asst的14月值是一样的,是该月的平均值。由于grads本身软件有一定的问题,当你不是设定一段时间而是一个时间点如:set t 1,步、不用modify命令,所有的时间序列都会有该值这两句是求30年(1971 012000 12)每个月的海温距平值,共360各月的距平值。这个不难理解,不做解释。以下为实例:1、利用所提供的数据文件,绘制出2003年7月60-150E、0-40N区域内700hPa流线图,且地形高度场超过2000米以上用黑色阴影显示,并且给出相应标题(请包含姓名拼音与学号),最终将图形保存。所有命令编写于.gs文件中。datadxgd.ctlset

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1