GrADS第3章基本操作命令
- 格式:ppt
- 大小:206.50 KB
- 文档页数:26
GrADS绘图软件实用手册2002年1月目录第一章GrADS绘图软件概述1.GrADS绘图软件简介2.Internet上的GrADS资源2.1GrADS在Internet上的主页2.2windows环境下GrADS资源3.GrADS绘图软件的安装(windows环境)3.1在windows环境下安装GrADS软件包X server 的安装第二章GrADS绘图模板1.GrADS示例演示1.1 启动GrADS1.2 退出GrADS1.3 示例演示GrADS命令的使用2.GrADS绘图模板3.GrADS模板的高级应用GrADS描述语言GrADS高级模板的应用第三章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) 是一套应用广泛、使用方便的科学数据绘图软件包。
其主要特点:●GrADS属于自由软件,可以从Internet上免费获得。
●可运行于各种Windows 和Unix工作平台。
●GrADS可用于4D数据的分析。
既经度、纬度、层(气压层、高度层等)和时间/xyzt 4维。
数据可以是格点化的数据或离散点数据。
GrADS特别适用于气象类数据的分析。
但也完全可以用于更广泛类型的数据分析。
●GrADS有多种显示方式:等值线、流线、矢量图、风矢量图、站点填图、折线图、直方图等多种两维图形。
●可处理多种数据格式的数据。
GRIB、NetCDF、HDF-SDS等通用数据格式和系统自定义的一种二进制数据格式。
●采用命令行输入的方式交互式地显示图形。
并有多种命令对数据进行再加工。
第一个命令:这样将得到一个动画显示的序列,现在输入: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基本命令d ave(olr,t+0,t+359,12) ave表示求平均,olr 为变量, t+0表示起始点为当前时次,即00z01jul1974;t+359表示终止时次为当前时次后推359个时次,即00z01jul2003;12表示每12个时次取一次数据;打开nc文件:ga->sdfopen查询信息:ga->q filega->q dimga->q ctlinfo写标题:ga-> draw title清除图面:ga-> c同时打开两个文件: ga->open model.ctlga->open model.le.ctl删除所有设置重新回到刚进入GrADS状态:ga->reinit删除open命令后的所有设置:ga->reset由风场导出涡度场:ga->d hcurl(u,v)以分色图形方式输出:ga->set gxout shaded以等值线方式输出(缺省方式):ga->set gxout contour画图例:ga->cbarn 1 0 (1:相对长短,>1放大;0:水平;1:垂直。
)以箭头方式表示矢量场: ga->gxout vector风矢量场:ga->d u; v; q (显示矢量时,d x分量;y分量<;标量>。
“<>”内的部分只起标颜色的作用。
)以流线方式表示矢量场:ga->set gxout stream风流线场:ga->d u; v; q以WMO风标方式表示矢量场: ga->set gxout barb风标:ga->d u; v; q直接输出网格点数值:ga->set gxout grid设置保留小数位数:ga->set dignum 0设置数字大小:ga->set digsize 0.1ga->set mpdraw on 如为off,不画地图背景(非经纬度数据需此项)ga->set poli on 如为off不画国界省界等。
d ave(olr,t+0,t+359,12) ave表示求平均,olr 为变量, t+0表示起始点为当前时次,即00z01jul1974;t+359表示终止时次为当前时次后推359个时次,即00z01jul2003;12表示每12个时次取一次数据;打开nc文件:ga->sdfopen查询信息:ga->q filega->q dimga->q ctlinfo写标题:ga-> draw title清除图面:ga-> c同时打开两个文件: ga->open model.ctlga->open model.le.ctl删除所有设置重新回到刚进入GrADS状态:ga->reinit删除open命令后的所有设置:ga->reset由风场导出涡度场:ga->d hcurl(u,v)以分色图形方式输出:ga->set gxout shaded以等值线方式输出(缺省方式):ga->set gxout contour画图例:ga->cbarn 1 0 (1:相对长短,>1放大;0:水平;1:垂直。
)以箭头方式表示矢量场: ga->gxout vector风矢量场:ga->d u; v; q (显示矢量时,d x分量;y分量<;标量>。
“<>”内的部分只起标颜色的作用。
)以流线方式表示矢量场:ga->set gxout stream风流线场:ga->d u; v; q以WMO风标方式表示矢量场: ga->set gxout barb风标:ga->d u; v; q直接输出网格点数值:ga->set gxout grid设置保留小数位数:ga->set dignum 0设置数字大小:ga->set digsize 0.1ga->set mpdraw on 如为off,不画地图背景(非经纬度数据需此项)ga->set poli on 如为off不画国界省界等。
目录前言 (5)第一章启动GrADS 及打开文件 (5)一.启动GrADS (5)二.打开文件 (6)第二章维数环境 (6)set lat|lon|lev|time val1<val2> (6)set x|y|z|t vall <val2 > (6)第三章显示命令及动画 (7)一、显示命令 (7)二、动画 (7)set loopdim x︱y|z|t (7)set looping on|off (7)第四章图形输出类型 (8)对格点数据: (8)bar: 直方图 (8)barb:风向杆形式绘二维风场 (8)contour:二维等值现图 (8)errbar:单线图及误差分布 (8)frgid:用指定颜色填充二维格点场 (8)fwrite:图形不在屏幕上显示,而是将输出结果存入一个由“set fwrite 文件名”所指定的文件中。
(8)gid:以网格形式在各网点中央标出该点数值 (8)line:单线图 (8)linefill:两单曲线之间填色 (8)scatter:散点图 (8)shaded:二维填色图 (8)stat:输出有关的统计量 (8)stream:流线形式绘二维风场 (8)vector:向量间箭头形式绘二维风场 (8)对站点数据: (8)barb:在各站点绘风向标 (8)findstn:搜索最近的站点(详见描述语言部分) (8)model:以天气图形式将天气观测各分量填放在站点四周 (8)value:在各站点标值 (8)wxsym:绘wx天气符号 (8)Draw wxsym symbol x y size<color<thicks>> (9)对于model,命令为set gxout model ,然后再添图,形式为displayu;v;t;d;slp;delta;cld;wx;vis (9)第五章 GrADS资料格式 (9)格点资料资料描述文件 (9)以下是一个资料描述文件的例子: (9)1、DSET data-set-name (11)2、TITLE string (11)3、UNDEF value (11)4、OPTIONS <keywords> (12)5、XDEF number<LINEAR start increment>或XDEF number<LEVELS value-list> (12)6、YDEF number mapping start<increment>或YDEF number<LEVELS value-list> (13)7、ZDEF number mapping <start increment>或ZDEF number<value-list> (13)8、TDEF number LINEAR start-time increment (14)9、VARS number (14)二. 台站资料资料描述文件 (15)第六章变量名和表达式 (15)一、变量名和表达式 (15)二、表达式 (16)第七章函数 (16)一. aave函数 (16)二.abs函数 (16)三.acos函数 (17)四、asin函数 (17)五、atan2函数 (17)六、ave函数 (17)七、cdiff函数 (17)八、const函数 (18)九、cos函数 (18)十、exp函数 (18)十一、gr2stn函数 (19)十二、hcurl函数 (19)十三、hdivg函数 (19)十四、log函数 (19)十五、log10函数 (19)十六、mag函数 (19)十七、maskout函数 (20)十八、oacres函数 (20)十九、pow函数 (20)二十、sin函数 (20)二十一、skip函数 (20)二十二、smth9函数 (21)二十三、sqrt函数 (21)二十四、stnave函数 (21)二十五、stnmin函数 (21)二十六、stnmax函数 (21)二十七、tan函数 (22)二十八、tloop函数 (22)二十九、tvrh2q函数 (22)三十、tvrh2t函数 (22)三十一、vint函数 (23)第八章图形要素设置 (23)对于图形类型为contour起作用的设置 (23)set ccolor color——设置等值线颜色 (23)set ccolor rainbow——设定等值线颜色用彩虹表示 (23)set cstyle style——设定等值线线型 (23)Set cthick thckns——设定等值线线宽hckns(取值范围1~20) (23)Set cterp on|off——设置样条差值光滑开关 (23)Set clab on|off|forced|string|auto——控制等值线的标记方式。
第一讲 GrADS简介一、G r A D S的应用领域及其功能*GrADS的全称:“The Grid Analysis and Display System”*应用领域:可在UNIX工作站以及个人微机上进行地球科学领域的数据资料分析和绘图*功能:对数据进行访问、分析和绘图1.可以根据需要绘制单线图、直方图、等值线图、填色等值线图、流线图、矢量图、站点模型图等各类图形.2.用描述语言编程,达到理想的绘图效果3.可以把在GrADS中绘制的图形以文件的形式保存起来,以备对其进行编辑4.调用GrADS的内部函数,能够对数据进行某些特定的计算,然后输出计算结果二、GrADS中常用的基本概念*数据格式:GrADS能够识别的数据为二进制无格式直接或顺序记录格式,该种格式数据的生成可以通过Fortran语言编程来实现。
*数据类型:格点数据(NCEP/NCAR的再分析资料)、站点数据(站点实测资料)、Grib数据(NMC产品)。
*维数环境:GrADS的操作对象为4维的数据集(4D data set),包括空间三维(纬度、经度、高度)和时间一维。
可以固定其中的一维或者几维以获得低于四维的数据子集。
此概念是对于格点资料而言的。
维数环境的定义可以在两种坐标上进行。
一种是地球坐标(world coordinate),以经纬度为度量单位;一种是格点坐标(grid coordinate),以网格点数为度量单位。
*几种文件类型:*.dat―数据文件*.ctl—原始数据描述文件*.gs―GrADS控制文件,用命令run执行之*.exe―GrADS在DOS环境下的各种执行文件三、启动和退出GrADS*启动GrADS的两种方式:1.在dos环境下直接输入grads命令即:切换到MS-DOS方式,进入到F:\pcgrads\msdos子目录下输入:grads回车2.从windows桌面上的“我的电脑”进入F:\pcgrads\子目录,然后双击g.exe图标*注意:在启动GrADS时,系统会问你以何种方式进入。
GRADS (Grid Analysis and Display System)概要内容提要一、GrADS绘图软件包的安装和运行二、GrADS绘图基本步骤三、GrADS绘图需要的三类型文件四、GrADS基本命令五、Fortran中如何读写二进制文件六、数据描述文件和gs文件简介一、GrADS绘图软件包的安装和运行1、演示安装2、启动GrADS1)双击grads图标2)绘画形式的选择风景画(横放):11⨯8.5 英寸(缺省)肖像画形式(竖放):肖像画形式是8.5 ⨯11 英寸3)GrADS的工作窗口分为两类:文本窗口:键入GrADS命令图形窗口。
显示所产生的图形两窗口之间可以切换。
二、GrADS绘图的基本步骤1、准备好了绘图资料(包括数据资料*.grd和数据描述文件*.ctl)2、启动GrADS3、打开数据描述文件(*.ctl)4、设置维数环境(set)5、生成图形文件6、查看图形文件(gv32.exe)例如:打开描述文件1)Open filename(盘符:路径/数据描述文件名)注意:启动GrADS后首先需打开至少一个数据描述文件2)显示变量图像D varname三、GrADS绘图需要的三类型文件.grd文件:这种文件格式为二进制无格式文件,可以是格点或站点资料,是从其他气象数据转化而来。
格点资料可以是直接存取或者顺序存取。
对格点资料而言,是一个五纬数据场,即时空、变量维(x/y/z/t/var).ctl文件:数据描述文件,纯ASCII码文件。
是对数据信息的描述,包括数据名称、时空范围、变量说明等。
.gs文件:GrADS控制文件,也是一个纯文本文件。
由GrADS描述(脚本)语言(Scripts Language)写成的批处理GrADS系统设置和命令。
.gmf文件:GrADS系统图元输出文件,由gv.exe或者gv32.exe查看。
*.grd:数据文件,无格式直接存取文件。
*.ctl:数据描述文件*.gs:GrADS命令批处理文件四、基本操作命令命令浏览1. open 打开数据描述文件2. d 显示一个GrADS "表达式“3. set 设置在绘图中所需要的环境变量1)地球坐标(world coordinates):set lat val1 <val2>set lon val1 <val2>set lev val1 <val2>set time val1 <val2>2)格点坐标(grid coordinates):set x val1 <val2>set y val1 <val2>set z val1 <val2>set t val1 <val2>当键入一个值时,该维--"固定";当键入两个值时,该维--"变化"。
第一个命令:这样将得到一个动画显示的序列,现在输入: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)现在来讨论控制图形输出的话题。
1.ctl文件的编写dset d:\test\test1.dat 数据文件路径名和文件名title monthly precipitation data 数据标题options 365_day_calendar 特殊格式说明365_day_calendar/template(多个文件) undef -9999.0 缺测值,若有多个则用fortran改写成同一个缺测值xdef 144 linear 0 2.5 x维数格点数/排列方式/起始值/间隔*linear线性/levels列举ydef 73 linear -90 2.5 y维数zdef 5 linear 1000 850 700 500 200 z维数tdef 24 linear 00z01Jan1979 1mo 时间维数*mo月yr年vars 1 变量数precip 1 99 *precipitation data 变量名/层数/排列顺序/说明endvars*变量循环顺序:x经度y维度z高度v变量t时间*注释行第一列用‘*’,注释行不能出现在变量列表中2.维数环境设置set lon/lat/lev/time var1 <var2> *实际值set x/y/z/t var1 <var2> *格点数值*两种坐标可以混用3.图形文件的保存gxprint/printim **.png/jpg/pdf/eps…. whiteenable print **.gmfprintdisableprint4.图形类型的设置set gxout typecontour 二位等值线图*默认shaded 二维填色等值线图vector 矢量箭头二维风场图*d u;v时为默认bar 直方图line 折线图*默认…………………5.图形要素设置gxout=contour or shadedset cint value 设置等值线间隔set clevs lev1,lev2,……设置特定等值线set ccols col1,col2,……设置对应于set clevs的等值线的颜色cbarn size 0/1 x y 设置色标gxout=line or contourset ccolor color 设置线条颜色set cstyle style设置线条样式1实线2长虚线3短虚线……set cthick thickns 设置线条粗细1~10set cmark marker 设置数据点标记0无标记*line时有效gxout=barset bargap val 设置直方条间隔*0~100百分比,0为无间隔set barbase val/bottom/top 设置直方条起始值gxout=vectorset arrscl size <magnitude> 设置箭头长度set arrowhead size 设置箭头大小,缺省为0.056.gs文件的编写将命令用单引号括起来7.变量define varname=expression 定义变量‘d air(t=3)’‘d air(t=3,z=5)’‘d air(lev=1000)-air(lev=500)’设置变量维数8.平均函数ave(expr,dimexpr1,dimexpr2,<timeint>) 一维平均aave(expr,dimexpr1,dimexpr2, dimexpr3,dimexpr4,) 二维平均*不能对z、t *需将维度设置成点9.地图投影设置set mproj proj 设置地图投影方式latlon 缺省nps 北半球极地投影sps 南半球极地投影set map color style thickness 设置背景地图线条颜色、线型、宽度10.绘图区域设置set parea xmin xmax ymin ymax11.坐标要素控制set frame on/off/circle 绘制图形边框/不绘制/绘制圆形边框set grads on/off 标记grads及绘图时间draw title <string> 绘制标题draw xlab/ylab <string> 绘制x轴/y轴图注set xyrev on/off xy轴互换set zlog on/off z方向用对数坐标set xlint/ylint value 设置x/y轴坐标刻度间隔set vrange val1 val2 设置y轴范围set vrange2 val1 val2 设置x轴范围set xlopts/ylopts color thickness size x/y轴刻度值的颜色、线宽、大小*缺省1,4,0.12 set tlsupp year 去掉年份显示12.颜色的定义‘define_colors’使用内部默认颜色标号13.基本绘图命令set line color style thickness 设置颜色、线型、线宽draw line x1 y1 x2 y2 绘制直线draw rec/recf x1 y1 x2 y2 绘制不填色/填色矩形draw mark type x y size 绘制标记*1叉2空心圆3实心圆4空心方框5实心方框draw string x y string 绘制字符串set strsiz hsiz <vsiz> 设置字符大小14.文件操作(1)输出二进制变量设置维数环境‘set gxout fwrite’‘set fwrite ***.dat’‘d var’(2)读写有格式文件result=read(filename)result 第一行:返回码(0 OK,1打开错误2文件结束8文件状态为写入9I/O错误)result 第二行:读取的文件内容Text = sublin(result,2) 将result相应行的内容赋值给Textaa=subwrd(Text,#n) 将Text的第n个值赋值给aaresult=write(filename, text, <append>)15.维数查询q w2xy lon lat 将经纬度坐标转换为图形窗口坐标返回值:X=*** Y=*** q xy2w X Y 将图形窗口坐标转为经纬度坐标返回值:Lon=*** Lat=***q w2gr lon lat 将经纬度坐标转换为格点坐标返回值:Xdim=*** Ydim=***q gr2w xdim ydim 将格点坐标转换为经纬度坐标返回值:Lon=*** Lat=***q xy2gr X Y 将图形窗口坐标转换为格点坐标返回值:Xdim=*** Ydim=***q gr2xy xdim ydim 将格点坐标转换为经纬度坐标返回值:X=*** Y=***16.气候平均设置季节变量‘set t 1 12’‘define climate=ave(var,t+0,t=tmax,12)’‘modify climate seasonal’滑动平均‘set t 1 tmax’‘define running_mean=ave(var,t-n,t+n)’17.站点资料绘图(1)转换生成数据文件及格点文件数据文件的顺序为先循环站号再循环时间,每条记录包含站号-纬度-经度-时间-nlev-flag-数据,每循环完一个时间后要加一个不写数据且nlev=0的记录(2)编写ctldtype stationstnmap ***.map**变量层数为0(3)生成.map映射文件!stnmap –i */*/*.ctl(4)插值‘open ***\grid.ctl’‘open ***dat.ctl’‘define varname=oacres(grid,var.2)’(5)绘图‘cnbasemap varname’18.绘制路径图。
实习三 set命令的使用练习
1.实习资料:
现在“data”文件夹下有二进制资料文件uv.grd、hgt.grd以及对应的数据描述文件uv.ctl、hgt.ctl。
2.实习要求:
1)利用所提供的数据文件,绘制出第7时刻500hPa高度场图,要求设置等值线间隔单位为40位势米,颜色,标记方式,并且给出相应标题(请包含姓名拼音与学号),最终将图形保存。
所有命令编写于.gs文件中。
2)利用所提供的数据文件,绘制出第7时刻850hPa风场图,要求以三种方式显示风场,并将三幅图上下排列于同一图形窗口,并最终将图形保存。
所有命令编写于.gs文件中。
3. 实习目的:
熟练使用set命令的各类参数设置,掌握.gs文件的编写格式和运行,学会保存图形文件。
4 .实验步骤
1,编写gs文件1
得出图形
2 编写gs文件2
画出图形。
GrADS绘图软件使用手3第三章GrADS数据格式每一组GrADS数据应至少包括两组数据文件,数据描述文件—ASCII 码和数据文件—二进制,数据的真正存放地。
数据文件中只是用户数据的有序排放,而关于数据种类、排放次序等是单独放在一个文件中的称—数据描述文件。
而象GRIB和NETCDF等通用数据格式,以上两者是存于同一个文件的—或称为自定义/自解释格式数据。
但考虑到GrADS传统,对这类自定义格式数据仍将生成相应的数据描述文件。
上一章中我们已使用过了这样的一组数据。
以此为例,介绍用户如何按GrADS的格式,将自己的数据生成相应的数据文件和数据描述文件。
1.格点数据描述文件model.le.ctl文件清单:以某开始的行为注解行。
1.1数据描述文件各项解释1.DSET数据文件名定义与此数据描述文件相对应的数据文件名。
若两者位于同一目录,前面的路经可以省略或以“^”开始,代表两者位于同一目录。
若不在同一目录下,应给出路经参数。
如:c:/pcgrad/ample/model.le.dat56注意路经的给法与DOS不同,而与UNI某环境一致,便于移植!或c:\\pcgrad\\ample\\model.le.dat,两种都行。
2.TITLE数据文件说明文字串。
3.UNDEFvaule定义缺测值。
一般给一很大的正/负值,表示,当取值超过这一正值/低于定义的负值,认为该值无效。
(GrADS采用跳过或用周围有效点的值处理。
)4.OPTIONS这里定义了与二进制存储有关的选项,二进制存储的一大特点是可移植性差,因此通过keyword项来增加可移植性。
若keyword省略,则OPTIONS也可省略。
可取:equential:顺序无格式方式。
yrev:Y维与YDEF定义相反方式存放。
zrev:Z维与ZDEF定义相反方式存放。
big_endian:如数据是在un,gi,hpcray机器上生成的,而目前不在此类机器上使用。