GrADS实用绘图--站点图 函数使用

GrADS站点文件作图详细解决方案

Fortran+GrADS站点作图详解 mofangbao@气象家园 帖子导读: 以前论坛也有过相关的帖子,但是到目前为止,仍然不断的有朋友看了那些帖子之后还是不知道如何下手,于是我打算为纯粹的新手写一份说明,这份文档会非常详细,因此适合刚接触GrADS的朋友来参考。 帖子介绍了fortran文件中读写数据的基本知识,grads的站点文件的存放格式,如何通过fortran来写出这个格式的文件,如何建立站点文件的CTL文件,如何为站点数据生成映射文件,站点映射文件的作用,如何通过站点CTL文件来预览站点数据,如何用fortran生成grads支持的格点文件,如何给格点配置CTL文件,如何编写GS文件来进行插值,如何绘制等值线以及阴影图,如何屏蔽区域外的图形等内容。如果你对以上问题存在疑惑,希望这个帖子能够对你有所帮助,因此,看完这份文档之后,您应该可以做到这些: (会的就跳过吧,我也是犹豫了很久要不要写的,算是新手礼包的一部分吧) 开始之前,先了解站点数据的基本内容 一般情况下,我们看到的站点数据是这样的: 50353 126.39 51.43 100 89 50632 121.55 48.46 100 54 50527 119.45 49.13 100 29 50434 121.41 50.29 100 46 50557 125.14 49.10 100 83 50745 123.55 47.23 100 80 50756 126.58 47.26 100 74 50788 131.59 47.14 100 36 50873 130.17 46.49 100 31 50978 130.57 45.17 100 59 第一列为站号,第二、三列为经纬度,第四、五列为其他数据。当然,也可能是把经纬度单独存放,然后数据单独存放,比如气候中心免费开放的160站的月平均温度降水值。如果是micaps资料可以查看micaps用户手册。这个例子中使用的就是micaps的第三类数据格式,示例文件可以从这里下载: (资料下载) 除了了解这些,还必须了解该数据的缺测值用什么来表示,这个在后面的数据描述文件中要用到。 1、在fortran中读入这些资料 在使用fortran之前,请确保你已经安装了fortran编译器,如果你是xp系统,建议安装CFV6,如果是win7系统,那么可以安装microsoft fortran powerstation4.0(以下简称4.0),这两个软件在气象资料站均有下载,安装完成后,请在你磁盘的某个文件夹下面新建一个文件夹用于本次作图,如果使用的是CVF6,该文件夹的路径中不要包含中文名。新建文件夹完成后,从开始菜单打开fortran编程窗口,然后点击file->new,新建一个free format的自由格式fortran文件,4.0的直接建立一个TextFile即可:

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:当所绘制坐标轴为时间轴时产生作用,表示要显示的时间格式

GrADS绘图软件安装及入门

GrADS绘图软件安装于入门

目录 第一章GrADS绘图软件概述 1.GrADS绘图软件简介 2.GrADS绘图软件的安装(windows环境) 3.1在windows环境下安装GrADS软件包第二章GrADS绘图模板 1.GrADS示例演示 1.1 启动GrADS 1.2 退出GrADS 1.3 示例演示GrADS命令的使用

第二章GrADS绘图软件概述 1GrADS绘图软件简介 The Grid Analysis and Display System(GrADS) 是一套应用广泛、使用方便的科学数据绘图软件包。其主要特点: ●GrADS属于自由软件,可以从Internet上免费获得。 ●可运行于各种Windows 和Unix工作平台。 ●GrADS可用于4D数据的分析。既经度、纬度、层(气压层、高度层等) 和时间/xyzt 4维。数据可以是格点化的数据或离散点数据。GrADS 特别适用于气象类数据的分析。但也完全可以用于更广泛类型的数据分 析。 ●GrADS有多种显示方式:等值线、流线、矢量图、风矢量图、站点填 图、折线图、直方图等多种两维图形。 ●可处理多种数据格式的数据。GRIB、NetCDF、HDF-SDS等通用数据格 式和系统自定义的一种二进制数据格式。 ●采用命令行输入的方式交互式地显示图形。并有多种命令对数据进行再 加工。如求平均;计算涡度、散度、垂直积分、计算差分等。 ●图形可以按多种格式存储:ps、png、jpg、tiff、gif、windows metafile 等。自身以metafile格式存储。 ●提供多种辅助工具软件。如看图、打印、图形格式转换(gv)等工具。 2Internet上的GrADS资源 2.1 GrADS在Internet上的主页 GrADS主页地址: 从GrADS主页上可以找到预编译好了的适合于windows环境下的GrADS软件包, 2.2 windows环境下GrADS资源 ●grads-2.0.a7.oga.3-win32_superpack.exe——GrADS软件包安装执 行程序。目前在windows环境下较新的版本为GrADS第2.0版。 ●下载GrADS演示数据: 从下载: model.le.dat 和model.le.ctl文件; 或者GRIB码格式的数据: model.grb、model.gmp和model.ctl 3GrADS绘图软件的安装(windows环境) 在windows下运行GrADS的条件: ●安装GrADS软件包 3.1在windows环境下安装GrADS软件包 运行上述可执行文件(双击)(grads-2.0.a7.oga.3-win32_superpack.exe)进

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 sst open(15,file='sst.grd',form='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后只有文件号,数据是无格式的 enddo enddo do it=1,nt do iz=1,nz write(16,*) ((sst(i,j,iz,it),i=1,nx),j=1,ny) !输出时是txt文件可直接看的数据,有格式输出,有* enddo enddo

grads站点文件作图教程

利用Grads画站点图(contour、shaded、grfill等) 1.利用Fortran程序将数据输出为grd格式。参考程序如下: parameter(num=160) (站点数) character*8 sta(num) (站名名数组,可任意) dimension xlon(num),ylat(num),rc(num) (经、纬度数组及其上对应的数值) open(30,file='cor.grd',form='unformatted') (工作站) open(30,file='cor.grd',form='binary') (微机) do 100 lev=1,20 (共输出20个时间上的观测或结果) tim=0.0 ilev=1 nflag=1 do 10 i=1,num sta(i)=char(i) write(30) sta(i),ylat(i),xlon(i),tim,ilev,nflag write(30) rc(i) 10 continue ilev=0 write(30)sta(num),ylat(num),xlon(num),tim,ilev,nflag (每个时次的结束) 100continue close(30) 2.ctl文件(创建与步骤1中输出的站点数据配对的station.ctl文件): dset cor.grd format sequential dtype station stnmap cor.map undef -9.99e33 tdef 20 linear jun1958 1mo vars 1 r 0 99 correlation endvars 3.为插值函数准备格点数据grid.grd及对应的grid.ctl dset grid.grd undef -99.0 xdef 71 linear 70 1 ydef 41 linear 15 1 zdef 1 linear 1 1 tdef 20 linear jun1958 1mo vars 1 g 0 99 grid data prepared for oacres function endvars 注意:两个ctl(station.ct l和grid.ctl)文件中的时间要严格一致。

相关文档
最新文档