气象绘图软件GrADS高级使用技巧
grads画图坐标设置

grads画图坐标设置⼀直听到有⼈抱怨,GrADS的坐标轴怎么那么固定,要设置个起始间隔还不⽀持时间轴,要在经纬度后⾯加个⼩圆圈的度数怎么就那么难,为啥不能四周都弄上坐标轴?好了,你的这些抱怨将会随着你看到这个帖⼦⽽消失,下⾯给出这个脚本的⽤法介绍:注意:在你display变量前需要先设置如下两个命令'set xlpos -20''set ylpos -20'这样能够屏蔽GrADS⾃带的坐标轴,否则会出现坐标轴重叠[code=gs]请先display变量,再运⾏该脚本该脚本主要实现了⾃定义的坐标轴显⽰,您可以免费使⽤该脚本该脚本的⽤法规则如下:#axis -param1 val1 -param2 val2...其中,-param表⽰需要⾃定义的参数类型,val表⽰该参数的具体设定值参数和参数值必须成对出现,例如#axis -type b -position o -sinterval 2上⾯的语句表⽰绘制类型是底部的x轴,刻度位置是朝外,每两个⼤的刻度之间显⽰两个⼩刻度线#注意:-type是必选参数所有参数如下所⽰:-type :表⽰绘制类型,参数值有:b/l/t/r 分别表⽰底部,左侧,上部,右侧-label:表⽰是否绘制数值标签,参数值有:on/off 分别表⽰绘制和不绘制-position:表⽰刻度的位置,参数值有:o/i/m 分别表⽰外侧,内侧,中间-start:表⽰刻度从该处开始绘制,参数值为该轴范围内的数字当该轴为时间轴时,表⽰开始绘制的时次(1,2,3...)-end:表⽰刻度的结束位置,参数值范围同start,时间轴时表⽰结束的时刻(1,2,3...) -interval:表⽰刻度的间隔,隔多少值绘制⼀个刻度和标签例如,当x轴表⽰经度110-150E,如果interval为10,默认情况下会标出110,120,130,140,150不给定该参数时,默认情况下,会绘制5个刻度,以此确定默认间隔-sinterval:表⽰没两个⼤刻度之间要绘制⼏个⼩的刻度,不给定该参数则不绘制-size:表⽰刻度的长度,单位是英⼨,默认为0.1-color:表⽰坐标轴和刻度标签的颜⾊,默认为1-lfont:表⽰坐标轴标签的字体,默认为当前环境下设置的字体-lsize:表⽰坐标轴标签的字体⼤⼩,默认为0.12-lthick:表⽰坐标轴标签字体的粗细,默认为0.3-langle:表⽰坐标轴标签旋转的⾓度,默认为不旋转-suffix:表⽰需要在每个坐标轴标签后⾯添加的⽂字或者符号后缀,⽐如⽤来添加度数等-asuffix:表⽰当坐标轴为经纬度轴时,是否⾃动添加E/W/N/S/EQ这种标记,默认为添加,参数值为 on/off ,分别表⽰⾃动添加和关闭⾃动添加-hoffset:表⽰坐标轴标签在⽔平⽅向上的偏移量,单位为英⼨,正负均可-voffset:表⽰坐标轴标签在垂直⽅向上的偏移量,单位为英⼨,正负均可-tformat:当所绘制坐标轴为时间轴时产⽣作⽤,表⽰要显⽰的时间格式参数值为y m d h 这四个字母的任意组合,分别表⽰年⽉⽇时如:-tformat my 则会将时间轴标签显⽰为JAN1951这种格式-v:当绘制图形是1-D图(set gxout line等)的时候是必选参数,表⽰当前display的是哪个变量[/code]来具体的看两个例⼦,这两个例⼦只是为了描述脚本的⽤法,所以不⼀定美观。
GrADS快速参考手册

x轴标注位置,offset:英寸;side=b,下|t,上
y轴标注位置,offset:英寸;side=r,右|l,左
数据中z维用对数坐标
设置坐标轴框的颜色<粗细>
y轴数据变化范围从vlo到vhi
x轴数据变化范围从vlo到vhi
把断点数据连上/不连上
在图上方居中写标题string
define
列出当前所有定义的变量名称
dims
列出当前打开的描述文件维数信息
gxinfo
列出图形系统的窗口信息
shades
填色图中每种颜色的序号和它所对应的数值范围
pos
等待用户在图形区单击鼠标,反回一对位置坐标值
time
返回时间维信息
fwrite
返回当前fwrite命领输出文件的名称
string s
给出经度-纬度坐标值 lon lat, 返回xy坐标值
pp2xy ppx ppy
给出页面坐标 ppx ppy,返回xy坐标值
set imprun script-name
在每个display命令前自动执行一遍script-name文件中的命令组
run file-name <params> file-name <params>
set zlog on|off
设置z坐标取对数坐标,或关闭此设制
set strmden value
设置流线密度[1-10],缺省为5
set stnopts <dig3> <nodig3>
以后3位数标数值
set mdlopts noblank|blank|dig3|nodig3
用GrADS制作ncep再分析资料气象要素图

文章编号:1007-6190(2004)04-0035-02用G rADS制作ncep再分析资料气象要素图杨兆礼(中国气象局广州热带海洋气象研究所,广州 510080)中图分类号:P409 文献标识码:B G rads气象图形系统是目前国内外气象界通用的标准图形环境之一。
用它来画气象要素图很方便。
本文简单介绍了如何使用G rads气象图形系统来对NCEP/NC AR再分析资料进行简单的绘图处理。
1 NCEP/NC AR再分析资料简介NCEP/NC AR再分析资料是美国国家环境预报中心(NCEP)和国家大气研究中心(NC AR)采用美国全球气候资料同化分析系统进行四维同化分析后获得的全球同化资料。
其全部历史资料来源于美国国家气候资料中心(NC DC)。
使用ncdum p命令,可以看到高空NCEP/NC AR 再分析资料的属性如表1所示。
每天共有4个时次,有73个纬度和144个经度,等压面共有8~17层(hPa),分别是:1000,925,850,700,600,500,400, 300,250,200,150,100,70,50,30,20,10hPa。
表1 NCEP高空等压面再分析资料说明(以1991年为例)文件名要素名称单位层次Air.1991.nc气温K°17Hgt1991.nc位势高度m17rhum1991.nc相对湿度%8shum1991.nc比湿kg/kg8omega1991.nc垂直速度pascal/s12uwnd1991.nc风—U分量m/s17vwnd1991.nc风—V分量m/s17 地面NCEP/NC AR再分析资料共有94个纬度和192个经度。
包括了气温、云强迫净长波通量、对流降水率、晴空长波射入通量、射入长波辐射通量、射入日辐射通量、地表热通量、冰盖判示、可能蒸发率、降水率、气压、水径流、风—U分量(10m 处)、风—V分量(10m处)等共42种要素。
2 选择绘图要素NCEP/NC AR再分析资料的文件名中,第1个单词便是我们绘图时要用到的变量名。
GrADS绘图学习技巧与实例

以下技巧总结都是笔者从学习实践过程中总结出来的,基本的问题。
不求全面,希望对读者学习有用,如果有问题,敬请留言指正,以促进交流学习!1、软件综述:grads软件是一款绘图软件除了绘制图形,还可以提取数据,主要应用是在大气科学中,当然只要是数据处理成grads能够读取的数据文件就可以进行相关绘图。
软件版本问题,软件本身不是很大,我接触到1.8、1.9、2.0版本的,1.8版本的安装很多情况还要修改环境变量、1.9版本的不识别‘sdfopen’命令,最稳定的版本是2.0版本,所以笔者推荐学习者安装2.0版本,选择默认安装路径就可以。
2、文件类型简述:grads处理的是网格数据,可以处理的数据类型有:grd、grib、nc(海洋常用的数据),cdf(雷达卫星数据),其中nc、cdf数据都是自带描述文件,不需要ctl,grib数据要通过命令生成ctl、index数据才可以调用,常用的是grd数据,需要ctl。
3、数据文件转换:grads软件识别的数据是二进制无格式数据,文件类型是‘binary’,写入和生成时是不需要格式的如read(20) sst(i,j,iz,it),20为文件号,通常是十进制数据与grd数据间转换,这里给一个grd转换成txt数据的fortran程序:parameter(nx=56,ny=41,nz=1,nt=360)dimension sst(nx,ny,nz,nt)real sstopen(15,file='sst.grd',form='binary') !固定的用form=‘binary’就是二进制数据open(16,file='sst.txt') !新建txt文件do it=1,ntdo iz=1,nzread(15) ((sst(i,j,iz,it),i=1,nx),j=1,ny) !read后只有文件号,数据是无格式的enddoenddodo it=1,ntdo iz=1,nzwrite(16,*) ((sst(i,j,iz,it),i=1,nx),j=1,ny) !输出时是txt文件可直接看的数据,有格式输出,有*enddoenddoclose(15)close(16)end写程序时:注意格点数要与数据对应,如:上程序对应的数据是经度90~200,纬度-20~60,时间:1971.01~2000.12共360个月的海面温度数据,数据格点精度2*2 ,nx=(200-90)/2+1,ny=(60-(-20))/2+1,nt=360,nz=1,大气的数据要根据数据的层次确定几层。
grads常用命令

第一个命令:这样将得到一个动画显示的序列,现在输入:claerset lon -90set lat -90 90set lev 1000 100set t 1d td u该情况下我们设置y(纬度)和z(高度)变化,所以我们得到一个竖直切面图。
我们显示了两个变量,他们重叠在一起。
你可以让任意多的变量重叠在一起,只要你不使用clear命令就行了。
另一个例子,这种情况X和T是变化的(哈莫图):cset lon -180 0set lat 40set lev 500set t 1 5d z现在已经知道怎样使用选定的部分数据绘图了,下面我们学习怎样操作数据。
设置维数环境为Z,Y变化:clearset lon -180 0set lat 0 90set lev 500set t 1现在假设我们想显示华氏温度代替开尔文温度。
可以这样转换:display (t-273.16)*9/5 32任何由标准的运算符,-,* 和/ 组成的表达式都是允许的,并且操作数可以包含常量,变量,或者函数。
一个包含函数的例子:d sqrt(u*u v*v)有一个函数用来计算风的级数。
d mag(u,v)另一个内建函数计算平均值:clear d ave(a,t=1,t=5)这种情况我们可以计算5天的平均。
我们也可以从数据中移除平均值(距平值):d z-ave(z,t=1,t=5)也可以在x方向作平均并求距平:cleard z-ave(z,x=1,x=72)也可以做时间差分:cleard z(t=2)-z(t=1)完整规范的变量名是:name.file(dim |-|=va lue,…) 如果我们打开了两个文件,也许一个是模式输出,另一个是分析,我们应该区分用如下方法二者:display z.2-z.1另一个内置的函数通过有线差分计算水平涡度相关cleard hcurl(u,v)还有另外一个计算数值方向的质量积分:cleard vint(ps,q,275)这儿我们计算了可降水量(单位mm)现在来讨论控制图形输出的话题。
浅谈GRADS气象绘图软件的使用

#$%& !’ ($& !
#$%&%#’(&!)* %% + ,-) .
/ 资料文件的数量 0 #$%&%#’(&!!* 12%3( + 4 . 1%’%12%3( 5 6 17 8 9:;(2%3( 8 <;=> 1%’ 6 ? 6 17 8 9:;(2%3( 8 <<’> 1%’ 6 ? @ 6 17 8 9:;(2%3( 8 A4-*> 1%’ 6 ? 6 17 8 9:;(2%3( 8 A-**> 1%’ 6 ? @ 6 17 8 9:;(2%3( 8 A!**> 1%’ 6 ? 6 17 8 9:;(2%3( 8 B4-*> 1%’ 6 ? @ 6 17 8 9:;(2%3( 8 B-**> 1%’ 6 ? 6 17 8 9:;(2%3( 8 B!**> 1%’ 6 5 / 须描述资料文件的列举 0 1C ,* 2 D ,? 4 C=(2 + ,* E 2? 9:;( D 12%3( + 2 . . ,* #C2’:2A( / 依次打开各个资料文件 0 C=(2 + !*? 9:;( D 6 17 8 9:;(2%3( 8 %;;1%’> F&1 6 ? 9C&3 D 6 G:2%&H 6 ? @%##(<< D 6 1:&(#’ 6 ? &(#; D 2I! 2H!J . / 把所有须描述的资料文件数据同时放入 , 个文件 %;;1%’ 中, 以便只须 , 次转换后便可以随意调取 0 :2A3G(& D * 1C ,**K D ,? ,-) 1C !* 2 D ,? 4 &(%1 + ,* E 2, -* . %% + K . &(%1 + ,* E 2? J* . + + F&:1 + :? L . ? : D ,? 2I . ? L D ,? 2H . :2A3G(& D :2A3G(& E , M&:’( + !*? &(# D :2A3G(& . + + F&:1 + :? L . ? : D ,? 2I . ? L D ,? 2H . !* #C2’:2A( ,** #C2’:2A( / 本程序按经纬度顺序先读写第一时刻的 <;=、 再读写第 <<’、 A4-*、 A-**、 A!**、 B4-*、 B-**、 B!**, 二时刻的资料, 依次类推 > > > 0 J* 9C&3%’ + ,-9J> * . -* 9C&3%’ + %)* . (21 !> ! 数据描述文件的编写 数据描述文件 1%’> #’; 的编写格式为: 1<(’17 8 9:;(2%3( 8 %;;1%’> F&1 / 1<(’ 是给出所描述文件的文件名 0 ’:’;(M(%’$(&1%’% A21(9 N "> ""(OO I1(9J- ;:2(%&J* !> H1(9,- ;:2(%& N ,*> * !> Q1(9J ;(B(;<,*** 4-* -** !** ’1(9 ,-) ;:2(%& L%2,"4! ,3C B%&<J / 共 <;=、 ’、 A、 B J 个变量 0 <;= * * / <(%;(B( ;=&(<<A&( 0 ’ * * / ’(3=< 0 ・!"・ / 该数据描述文件的标题 0 / 缺省记录的标记 0 / I 方向共 J- 个格点, 起始纬度为 J*P, 步长为 !> -P 0 / H 方向共 ,- 个格点, 起始经度为 N ,*P, 步长为 !> -P 0 / Q 方向分为 J 层, 即 , ***、 4-*、 -**、 !** R=S 0 / 时间共 ,-) 个月, 起始时间为 ,"4! 年 , 月, 步长为 , 个月 0
第二讲GrADS绘图的各种设置

地图投影设置:
set mproj proj 设置当前地图投影方式。
常用proj取值包括: latlon:缺省设置,用固定的投影角进行Lat/lon投影
; scaled:用不固定的投影角进行latlon投影,地图比例
失效; nps | sps:北半球|南半球极地投影; robinson:robinson投影,x:-180 180;y:-90 90 off:不画出地图,坐标轴也不代表lat/lon。
对图形为矢量图起作用的 设置:
set arrscl size <magnitude> 设置矢量箭头的长度为size(
英寸), 选项magnitude的值为矢量的
大小(例10m/s)。
set arrowhead size 设置箭头大小,缺省为0.05,
取0不画头,取负与矢量值 成比例。
例:set arrowhead 0.06
,后者是网格坐标。 例:set lon -180 0
set lat 0 90 set lev 500
set t 1 换成set time 00:00z01Jan2001
图形类型设置:
当维数环境确定后,缺省情况下,一维变量输出的图形为单线 图,二维变量为等值线图,若想进行特殊指定,键入命令:
set gxout graphics-type(图形类型) 对格点数据: contour: 二维数据等值线图(缺省) shaded: 二维填色等值线图 grid: 二维场不绘图,以网格形式在各网格点中央标出该场点
数值 vector: 矢量箭头形式绘二维风场 stream: 流线形式绘二维风场 barb: 风向杆形式绘二维风场 bar: 对一维场不绘单线图,而绘直方图 line: 对一维场绘单线图(缺省) 例:set gxout shaded
GrADS绘图软件使用手册

GrADS绘图软件实用手册2002年1月目录第一章 GrADS绘图软件概述1.GrADS绘图软件简介2.Internet上的GrADS资源2.1GrADS在Internet上的主页2.2 windows环境下GrADS资源3.GrADS绘图软件的安装(windows环境)3.1在windows环境下安装GrADS软件包3.2X server 的安装第二章 GrADS绘图模板1.GrADS示例演示1.1 启动GrADS1.2 退出GrADS1.3 示例演示GrADS命令的使用2.GrADS绘图模板3.GrADS模板的高级应用3.1GrADS描述语言3.2GrADS高级模板的应用第三章 GrADS数据格式1.格点数据描述文件1.1 数据描述文件各项解释1.2 生成model.le.dat和model.le.ctl文件的程序代码片段2.站点数据的格式附录1.如何精确控制图形输出的尺寸—Landscape纸型2.台站资料的显示3.Linux环境下的安装第一章 GrADS绘图软件概述1GrADS绘图软件简介The Grid Analysis and Display System(GrADS) 是一套应用广泛、使用方便的科学数据绘图软件包。
其主要特点:z GrADS属于自由软件,可以从Internet上免费获得。
z可运行于各种Windows 和Unix工作平台。
z GrADS可用于4D数据的分析。
既经度、纬度、层(气压层、高度层等)和时间/xyzt 4维。
数据可以是格点化的数据或离散点数据。
GrADS特别适用于气象类数据的分析。
但也完全可以用于更广泛类型的数据分析。
z GrADS有多种显示方式:等值线、流线、矢量图、风矢量图、站点填图、折线图、直方图等多种两维图形。
z可处理多种数据格式的数据。
GRIB、NetCDF、HDF-SDS等通用数据格式和系统自定义的一种二进制数据格式。
z采用命令行输入的方式交互式地显示图形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
收稿日期:2002-11-1作者简介:高文良,男,31岁,主要从事短期气候预测等研究工作。
气象绘图软件GrADS 高级使用技巧高文良1 刘晓燕2 曾小东3(11成都高原气象研究所 成都 610072; 21阿坝州金川县气象局 62410031阿坝州马尔康县气象局 624000)摘 要:本文通过介绍气象绘图软件GrADS 使用中的一些高级技巧,分析了GrADS Script 语言中的难理解之处,并介绍了在GrADS 中做合成分析和t 检验的程序,可以对学习和使用GrADS 的科研人员起参考、帮助作用,达到事半功倍的效果,促进GrADS 软件的应用更广泛、深入,提高科研人员的工作效率。
关键词:GrADS ;技巧;程序中图分类号:TP391文献标识码:C文章编号:1003-7187(2002)04-0057-031 引言气象绘图软件GrADS (Grid Analysis and Dis 2play System )是免费共享软件,可随时从互联网上下载(http :///grads/),后续版本正陆续推出[1]。
GrADS 有丰富的内部函数,可以对数据进行计算和分析处理。
它支持处理格点资料和站点资料,并且支持对GriB 码文件、特殊格式文件(如一字节整型、二字节整型、大中型机器二进制数据等)的直接读取,气象科研领域应用非常广泛[2]。
在其最新1.8SL 9版本中,GrADS 又将应用领域推进到了海洋学科,功能也得到了进一步地增强和扩展。
但在使用GrADS 的过程中,特别是使用GrADS Script 语言编程当中,有一些问题需要特别注意。
因为GrADS Script 语言是一种类似于VB Script (或MA TL AB Script )的高级语言,稍不注意就容易出现错误,且查错十分困难,这点与其他语言有较大的差别。
2 站点数据处理GrADS 中站点数据处理基于格点数据的基础之上,需先将站点数据通过Cressman 客观分析方法内插至格点上,然后再依照格点资料的处理方式对站点资料数据进行分析和处理。
所以,内插的背景网格点的选取就显得比较重要。
提供背景格点资料数据只起一个背景网格场的作用,格点数据并不参与运算,只提供网格背景,告诉站点数据插至什么点及各个点的距离、综合考虑几个点来插值等信息。
因此,对于需要揭示小尺度特征气象场的站点数据,就需要将背景网格点的间距取得小一些,这样可以将局地小尺度信息完整地体现出来。
反之,如果要强调大尺度的信息,就可以将背景格点场的间距取得大一些,将小尺度的噪声滤掉,体现大尺度场的特征。
两种方法的最终目的是画出真实而美观的原始数据场的图形。
要将已有的站点数据资料转换成GrADS 可以读取格式的站点数据,也可使用Visual Fortran 6.0或C 语言(Turbo C 、Visual C ++等)进行转换。
但必须按照GrADS 的规定格式来变换。
数据文件头的结构和定义也必须按规定且与后续数据一致。
在Visual Fortran 6.0语言中可以用流式文件(Stream )的方式生成GrADS 需要的站点数据文件,可以写成多时次、多层次和多变量的数据集(在Power Station 4.0中则不能写成多时次和多层次的数据集,它不支持Stream 方式的文件,只能写一个时次的数据)。
而在C 语言中的操作更加方便,因为C 语言中对文件的操作方式一般是以字节为单位进行的,没有其他多余的信息。
只要按照GrADS 要求的数据格式生成数据,以上的各种语言环境下都能够被GrADS 正确读取。
另一个需注意的问题是在格点文件和站点文件之间,一定使两者的数据描述文件保持时间上的一致性。
起始时间和时间步长都要符合数据本身的规定。
如果起始时间不一致,在GrADS 中会出现少于两个站的提示,画出的图被标示为缺测值。
如果上述两种数据的时间步长不一致,则可能出现错误的结果,导致在一个特定时间下的数据成为另一个时间下的数据,而不是操作者想要的时次。
或者图形的结果和前面第一种错误一样,出现全为缺测值的错误情况。
3 Query命令在GrADS当中,Query命令(可简写为Q)似乎并不重要,有些用户几乎不用它。
实际上,Query命令在gs文件编程当中有非常重要的作用。
在GrADS中每执行一个命令之后,命令的结果放在re2 sult变量和rc变量之中。
result变量储存命令执行的返回字符串信息,而rc变量是一个整数,储存命令的执行结果的数字标识,往往用来指示命令是否成功等信息。
这样,在打开文件时,我们可以用Query命令询问打开文件的维数情况、变量情况、空间间距等一系列的信息。
对编写一些通用程序起到很大的帮助。
Query命令在GrADS Script语言编程中的重要性非常明显。
通过它,可以在gs文件中知道一个命令的执行是否成功,有时还只能通过它来得到命令的执行结果。
在进行坐标转换当中,通过Query命令来得到同一个点在不同坐标系下的坐标,从而对数据进一步处理。
除此这外,Query命令还可以得到文件的时间信息、变量定义信息、等值线有关信息、光标信息等。
4 G rADS中做合成分析和t检验通过对以上几点的介绍,我们就可以在GrADS 中做一般数据的合成分析和t检验。
在以下的例子中我们假设所用的数据为NCEP/NCAR再分析资料数据集,时间跨度从1949.1到1999.12,垂直方向上为17层、每月一次的全球月平均高度场资料。
在程序中以“#”号开头的为注释行及对整个数据集进行操作,不进行中间转换,直接输出图形。
在GrADS Script语言中所有变量类型都是字符型的概念非常有助于理解本程序。
详细的程序如下:f unction main(args)if(args=’’);args=3;endif#以下分为三个层次(200hPa,500hPa,600hPa)循环进行合成分析height.1=200;height.2=500;height.3=600#预先选定的多雨年14年、少雨年13年(n、m)及多雨年、少雨赋值n=14;m=13bet.1=1949;bet.2=1956;bet.3=1961;bet.4= 1963;bet.5=1965;bet.6=1967bet.7=1971;bet.8=1973;bet.9=1974;bet.10 =1977;bet.11=1980;bet.12=1991bet.13=1997;bet.14=1998let.1=1954;let.2=1959;let.3=1962;let.4= 1964;let.5=1966;let.6=1968let.7=1969;let.8=1975;let.9=1976;let.10= 1981;let.11=1987;let.12=1995let.13=1996#打开原始数据文件’open d:\ncep\z\hgt.ctl’#最外层循环,控制在三个层次(200hPa, 500hPa,600hPa)上的计算、显示loop=1while(loop<=args);’set lev’height.loop;#loop1循环计算多雨年的各合成变量及合成平均 loop1=1 while(loop1<=n); ’set time dec’bet.loop1 ’be’loop1’=(z+z(t+1)+z(t+2))/3.0’ loop1=loop1+1 endwhile ’be=(be1+be2+be3+be4+be5+be6+be7 +be8+be9+be10+be11+be12+be13+be14)/’n’’#、变量z的多年平均’zseason=(ave(z,t=12,t=600,12)+ave(z,t =13,t=601,12)+ave(z,t=14,t=602,12))/3.0’#loop2循环计算少雨年的各合成变量及合成平均 loop2=1 while(loop2<=m) ’set time dec’let.loop2 ’le’loop2’=(z+z(t+1)+z(t+2))/3.0’ loop2=loop2+1 endwhile ’le=(le1+le2+le3+le4+le5+le6+le7+le8 +le9+le10+le11+le12+le13)/’m’’#以下计算在t检验中要用到的中间变量,tt为t分布值,注意pow函数的用法 ’sum1=0’;loop3=1 while(loop3<=n) ’sum1=sum1+pow((be’loop3’-be),2)’ loop3=loop3+1 endwhile ’sum2=0’;loop4=1 while(loop4<=m) ’sum2=sum2+pow((le’loop4’-le),2)’ loop4=loop4+1 endwhile ’temp1=’n’’;’temp2=’m’’;’s=sqrt ((sum1+sum2)/(’n’+’m’-2))’ ’tt=(be-le)/(s3sqrt(1/temp1+1/ temp2))’ #图形显示 ’d be-zseason’;say’t he more rain:at’height.loop’’ pull dummy;’c’ if(dummy=’exit’);’reinit’;return;endif ’d le-zseason’;say’t he less rain:at’height.loop’’ pull dummy;’c’ if(dummy=’exit’);’reinit’;return;endif####以下进行t检验的图形输出#### ###################### #############n+m-2=25,alp ha=0.05,talp ha=2. 060,alp ha=0.1,talp ha=1.708###################### ###################### ###################### # ’set gxout shaded’;’set ccols85058’ ’set clevs-2.060-1.7081.7082.060’ ’d tt’;’set gxout contour’;’d tt’ say’t he t test:at’height.loop pull dummy;’c’ loop=loop+1endwhile#变量释放空间,完成程序结束工作loop=1while(loop<=n) ’undefine be’loop’’ loop=loop+1endwhileloop=1while(loop<=m) ’undefine le’loop’’ loop=loop+1endwhile’undefine be’;’undefine zseason’;’undefine sum1’undefine sum2’;’undefine tt’;’undefine le’’undefine temp1’;’undefine temp2’;’undefine s’’close1’return5G rADS1.8SL9版本中的新增功能和新增函数5.1 新增功能在GrADS1.8SL9版本中[3],新增了不少功能。