GrADS站点资料的使用

合集下载

GrADS学习资料:第2章 数据处理

GrADS学习资料:第2章 数据处理
<litlee-endian>在PC, DEC等机器上生成 的数据 个人电脑
big-endian、little-endian 用于自动改变二进制位存放顺序
<template> 多个时间序列原始数据文件用一个数据描 述文件统一地描述描述这些原始数据时采用的选项, 这些数据文件的文件名形式由 dset 定义的形式命名 文件名,提示所含数据的时次。
例如:
正确的替换为: %y2 两位数年 %y4 4 位数年 %m1 1 或2 位数月 %m2 2 位数月(用 0补齐 1 位数) %mc 3 字符月份缩写 %d1 1 或2 位数天 %d2 2 位数天 %h1 1 或2 位数小时 %h2 2 位小时
设置X方向格点与经度的对应关系
XDEF number <LINEAR Start increment> 或 XDEF number <LEVELS value-list>
number(>=1)给定格点数,整形; LINEAR指明是等间隔分布格点, Start起点坐标,负数表示西经; increment网格间距。 LEVELS参数指明是不等间隔分布格点,列 出具体每个格点的坐标值(以空格分开)。
open(1,file='u.dat')
open(2,file='v.dat')
open(3,file='sst.dat')
! 打开目标文件
open(12,file='mhy.grd',form='binary')
! 把数据文件读入
do 100 it=1,nt do 50 iz=1,nz
read(1,*) ((u(i,j,iz,it),i=1,nx),j=1,ny) 50 continue

Grads使用手册

Grads使用手册

1

令。详见§6。 (4) .exe 系统命令文件,是 GrADS 系统在 DOS 环境下的各执行文件。如 grads.exe 为 GrADS
图形分析和显示命令;dos4gw.exe 为 DOS 的扩展环境;gxps.exe、gxpsc.exe、gxpscw.exe 都是图元文件转换为 postscript 文件的执行文件;gxtran.exe 是图元文件转换到显示器上 显示的执行文件;gx.exe 是将图元文件转换为各种不带 ps 解释器的打印机输出的执行文 件。详见§1.3。 (5) .gmf(.met) GrADS 系统图元输出文件,格式由 GrADS 内定,文件名随用户自定,
中国科学院大气物理研究所 大气科学和地球流体力学数值模拟国家重点实验室 National Key Laboratory of Numerical Modelling for Atmospheric Sciences and Geophysical Fluid Dynamics ( LASG ) Institute of Atmospheric Physics, Chinese Academy of Sciences
gradsnc
GrADS with readline, printim, LATS, read/write NetCDF
gradshdf GrADS with readline, printim, LATS, read/write HDF, read NetCDF
gribmap
"Maps" a GRIB data set to a GrADS descriptor file
§1.3 基本操作
新版本的 GrADS 交互环境中可以使用上下左右箭头键对曾经使用的命令进行调用和编 辑,但仅限于本次启动 GrADS 交互环境后所使用的命令。

GrADS快速参考手册

GrADS快速参考手册
设置y轴标注的颜色<粗细<大小>>
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处理台站数据精讲

GrADS处理台站数据精讲

废话不说,开始讲解第一步:处理站台id文件:文件处理成三列数据,第一列为站台号,第二列为纬度,第三列为经度注意,如:站号纬度经度50136 52.97 122.5250246 52.35 124.7250349 51.70 124.3350353 51.72 126.65上述数据中50136连同后面的空格要保证一共有8位(这点不容质疑)第二步:处理数据一般要将所要的要素,如日照时间,单个要素放到一个txt文件中,数据的顺序是:同一个时间点371个站数据,然后放下一个时间点的371个要素值,如此直到最后时刻。

第三步:处理成对应格式数据grd文件案例程序(371个站18263天的数据):说明:这里的rct_50years_371_5vars\50year_371id.txt 为第一步生成的台站id文件rct_50years_371_5vars\371_sd_1956_2005.txt 为第二步生成的数据文件注意:1、数据必须设成实型的,站号必须为8位字符型(与第一步照应);2、数据存放依然是先站,后时次,即最外层为时间循环3、每一行数据:站号—纬度—经度—相对时次—记录标志—nflag—要素数据4、程序中tim为相对时次,指的是相对于一天的世界时,如果数据本身是日数据,那么time就取0.0,一般都是这样,除非是有08时、20时等多个时刻,才考虑time不为0.0,此处设为0.0恒定,元数据为日数据5、程序中nlev标志一个时刻记录开始,结束时赋值为0,对应程序;6、nflag为有没有地面报,有为1,否则为0,此处为地面观测相对湿度,为17、循环中每个时次的371个站数据输完后,要加一行标志记录(红色)8、生成的文件为二进制grd文件,所以为write(30),没有格式说明;直接加文件号9、第一二三步数据的顺序一定要与站号顺序对应。

program ex00implicit noneinteger nlev,nflag,i,jreal lat(371),lon(371),tim,sd(371)character*8 stid(371)tim=0.0nflag=1open(10,file='D:\Program Files\FORTRAN6.0\txt_grid\rct_50years_371_5vars\50year_371id.txt') open(20,file='D:\ProgramFiles\FORTRAN6.0\txt_grid\rct_50years_371_5vars\371_sd_1956_2005.txt')open(30,file='D:\ProgramFiles\FORTRAN6.0\txt_grid\rct_50years_371_5vars\371_sd_1956_2005.grd',form='binary') do i=1,371read(10,*) stid(i),lat(i),lon(i)enddoclose(10)do i=1,18263nlev=1do j=1,371read(20,*) sd(j)write(30) stid(j),lat(j),lon(j),tim,nlev,nflag,sd(j)enddonlev=0write(30) stid(371),lat(371),lon(371),tim,nlev,nflagwrite(*,*) "Finish writting:",ienddoclose(20)close(30)end第四步:写相应数据grd的ctl,如下dset c:\371yue\371_sd_1956_2005.grddtype stationstnmap c:\371yue\sd50.mapundef 32766title sun hourtdef 18263 linear 01jan1956 1dyvars 1sd 0 99 sunhour(0.1h)endvars第五步:写标准的格点文件用于后期插值这里经度为1°*1°,70E-140E,15N-55-N注意:grd的经纬度范围要大于格点的范围,时间可对应。

气象绘图软件GrADS高级使用技巧

气象绘图软件GrADS高级使用技巧

收稿日期: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实用绘图--站点图 函数使用

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

存放在 系统变量 result中
16
六. set gxout其它选项(D)2—print / fwrite
输出格式
set prnopts format(%g) line_n(8) blank_n(1) { |u}
LASG动力论坛版
数据写屏输出 set gxout print binary数据输出 set gxout fwrite
• 注意点
♥♥♥
– 为避免插值出现虚假结果, 参考网格的间隔与站点 间距相近为好; – 具体情况具体分析, 并不一定Cressman函数更好!
12
LASG动力论坛版
六. 图形显示(D)2
• 变量定义技巧
— 站点绘图扩展
♥♥♥
– define命令只适用于格点数据; – 在当前缺省文件为格点数据时, 可以用define 命令将站点数填色(马赛克图) stat 按set fgvals指定值填网格颜色 print 网格填值 fwrite
findstn 寻找最近的站点 model 站点填图 stnmark 标记站点位置 value 标站点值
tserbarb 单站的风羽时间序列 tserwx 单站天气现象时间序列 wxsym 在站点上标记天气符号(set wxopt)
天气符号颜色
set wxcols #c1 #c2 …
字符大小
set digsize #inch
粗 细
set cthick #thick
颜 色
set ccolor #color
u,v,t,d,slp,Δp: 风,温度,露点,地面气压,变压 cloud: [1~9] 标记的类型, [20~25]云量: 20晴, 21少云, 22中云, 23多云, 24阴; 25缺测(M)

GrADS绘图软件使用手册

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采用命令行输入的方式交互式地显示图形。

GRADS中文说明

GRADS中文说明

目录前言 (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站点资料的使用

GrADS站点资料的使用

GrADS站点资料的使用GrADS站点资料的使用台站型离散资料画图的一般原则1、把台站资料r.dat写成二进制文件r.grd一般而言,台站资料都是文本格式的,须用专门的程序写成带有站号、经度、纬度等的二进制文件。

例如:对某一时次的降水资料r.dat有如下形式:lon lat Precipitation119.8 30.6 0119.8 30.616 0119.8 30.632 0119.8 30.648 0119.8 30.664 0119.8 30.68 0119.8 30.696 0119.8 30.712 0119.8 30.728 0119.8 30.744 0119.8 30.76 0119.8 30.776 0。

该数据只有一个时次则相应的程序stn.f如下:parameter(n=10201)integer r1(n)real lat(n),lon(n),r(n)character*8 zh(n)open(1,file='d:\common\1.txt',form='formatted',status='old ')do i=1,nread(1,*)lon(i),lat(i),r1(i)r(i)=r1(i)enddodo i=1,nzh(i)=char(i)enddoopen(9,file='d:\common\r.grd',form='binary',status='unkno wn')open(99,file='d:\common\rr.txt')do 100 i=1,ntim=0.0nlev=1nflag=1write(9)zh(i),lat(i),lon(i),tim,nlev,nflagwrite(9)r(i)write(99,200)lon(i),lat(i),r(i)200 format(f8.3,f8.3,f6.2)100 continuenlev=0write(9)zh(i-1),lat(i-1),lon(i-1),tim,nlev,nflagclose(9)! do i=1,160do i=1,nif(r(i).lt.0.0)thenwrite(*,*)lon(i),lat(i),r(i)endifenddo! write(*,*)i,zh(5000),lat(5000),lon(5000),tim,nlev,nflag,r(5000)pause! enddoend2、编写r.grd数据的数据说明文件r.ctldset d:\common\r.grddtype stationstnmap d:\common\r.mapundef -999.0title station datatdef 1 linear jan1998 1movars 1r 0 99 grid data prepared for oacres functionendvars3、用r.ctl生成r.map文件实际上,是在GrADS中运行可执行文件stnmap.exe,如何运行对于自带显示窗口的GrADS1.8版本的:进入命令窗口后,在提示符下输入“!stnmap”ga_>!stnmap在出现的信息提示处输入r.ctlEnter stn ctl filename: D:\r.ctl4、生成格点文件因为GrADS只识别格点数据,所以需要把站点上的资料通过插值函数插值到某个格点文件上才能被识别。

Grads站点资料的多层次绘图

Grads站点资料的多层次绘图

Grads站点资料的多层次绘图看了很多关于如何使用grads和fortran转换站点资料的帖子,大多数都集中在地面或者单层的,对于高空的多个层次很少有提到,而且大多数有些模糊,不好理解,我把自己做的一些整理传上来,供大家参考参考。

欢迎大家指出理解和程序的错误。

一,首先是数据的说明选用micaps高空观测资料850hpa,700hpa,600 hpa,500hpa,200hpa,100 hpa 六个层次作为例子。

为了方便,时间层次就选择1个时间。

micaps高空观测资料的说明如下:diamond 2 10年07月28日20时200百帕高空观测10 07 28 20 200 419因此定义mt=419,nz=4数据每行的排列分别是:站号,经度,纬度,高度……..具体详见micaps 的使用手册,这里不再赘述。

根据这些定义变量。

二,fortran读取站点资料注:1.根据micaps的高空资料定义相应的变量,由于850-100这6个层次的站点是相同的,站号,经纬度等只需定义成一维的,如lat(mt),而lev(nz)表示有6个层次,也为一维;高度场等又有mt个站的资料又有nz个层次,因此定义为2维的。

2.由于micaps资料分别在不同的文件内,文件名重复,我修改为100_2820,200_2820,500_2820…….然后使用trim函数顺序读取资料。

3.为了更好的说明地面和高空资料的读取,将地形高度high(mt)设置为地面的量,nlev定义为7,即高空六层,地面一层4.以输出地面一个变量,高空三个变量为例。

先进行站点的循环,再进行高空层次的循环。

5.前面我们定义了lev(nz),现在给lev(nz)赋值,使用select case.,分别赋值为850,700,600,500,200,100。

在使用是发现如果不进行赋值,后续工作也无法进行,会出现错误。

程序如下:program stationparameter (mt=419,nz=6) ! mt 总站数,nz总层次character stid(mt)*8integer flag,nlevreal lat(mt),lon(mt),tim,high(mt),number(mt),lev(nz) realheight(mt,nz),temp(mt,nz),ttd(mt,nz),ud(mt,nz),us(mt,nz),u(mt,nz),v(m t,nz),td(mt,nz)!顺序读取资料character stationfile(6)*8data stationfile/'850','700','600','500','200','100'/do k=1,nzopen(k,file=''//trim(stationfile(k))//'_2820.000')read(k,*)read(k,*)!跳过micaps开头两行的说明文字do i=1,mtread(k,*)stid(i),lon(i),lat(i),high(i),number(i),height(i,k),temp(i,k ),ttd(i,k),ud(i,k),us(i,k)end doend do !结束k的循环tim=0.0flag=1nlev=7 !高空+地面open(40,file='20.grd',form='binary')do i=1,mt !站点循环write(40)stid(i),lat(i),lon(i),tim,nlev,flag,high(i)do k=1,nz !高空循环!对lev(nz)进行赋值select case(k)case(1)lev(k)=850.0case(2)lev(k)=700.0case(3)lev(k)=600.0case(4)lev(k)=500.0case(5)lev(k)=200.0case defaultlev(k)=100.0end select!在lev(k)后将要输出的所有高空变量一次性输出write(40)lev(k),height(i,k),temp(i,k),ttd(i,k)end doend donlev=0write(40)stid(mt-1),lat(mt-1),lon(mt-1),tim,nlev,flag close(40)end三,ctl及map文件的生成注:看到相关帖子说在站点资料的ctl文件中也要设置zdef,我试了下,设置和不设置都是可以的Ctl文件如下:dset f:\20.grddtype stationstnmap f:\20.mapundef 9999.0title 20zdef 6 levels 850 700 600 500 200 100tdef 1 linear 28jul2010 1DYvars 4high 0 99 Terrain Heighth 6 99 heightt 6 99 temperaturettd 6 99 ttdendvarsCtl文件编写完成后,就可以在grads中生成map文件了,相关命令如下:! stnmap -i f:/20.ctl注意,斜杠一定是“/”,方向不能反第三步结束后,站点资料的读取就结束了,可以通过grads打开Ctl文件看到相关站点的值了。

GRIB数据及其在GrADS中的使用

GRIB数据及其在GrADS中的使用
关键词 *+,- 数据 *./01 中图分类号:32"& 文献标识码:-
随着气象研究的不断深入,庞大的气象数据不 扩充,并不断对其进行完善。
但对计算机提出更高的要求,而且要求在国际间能
!&&"年,形 成 了 *+,- 的 第 一 版 本(L79C9@:
形成一种有效的、统一的、标准的数据存储和流通 !)。
的图形化和可视化处理,"’()数据也不例外。而 件,然后使用 6#/7<9=和 2-.文件生成相应的(01
网格资料分析工具 "#$%&对标准 "’()数据有较 文件。
好的支持。
第二种方法:使用 3425 的 >;8.;?47/8@A9B/
!*+ 直接处理 "’()数据
编写的 C6#/7*;1;输出 "’()数据文件的网格信息
程度上影响了气象服务的质量。
其方法可以用以下公式来说明:
本文正是基于这种目的,简要地剖析了 *+,-
!!!""M#N($!’%)…………………(!)
码的压缩方法、数据结构以及在 *./01中进行反
其中:
演的方法。
!M原始数据;
! *+,-简介
"M!"的幂指数; #M参考值(即数据的最小值);
!6! *+,-数据的发展
说,由公式(%)可见,数据的精度取决于 & 和 ’,由 文件的物理结构见图%。
于固定字长对所有数据均使用相同的字长,因此数
一个 !"#$记录最多可分为以下六段,其中两
据的精度取决于二进制字的字长(即 ’),对于变化 个是可选项:

[转]grads中站点处理和oacresmaskout函数应用心得

[转]grads中站点处理和oacresmaskout函数应用心得

[转]grads中站点处理和oacresmaskout函数应⽤⼼得SJ 发表于: 2011-1-05 13:22 来源:昨⼉刚刚帮同事画了两张降⽔图(不同时间段的),很是费劲,中间碰到若⼲问题,但好在最后基本达到了满意的效果,下⾯把这次画图中遇到的问题及解决办法贴出来,供⼤家参考或指正:1,数据处理的问题由于micaps的24⼩时降⽔资料中,并不是每个时次的⽂件⾥的站点个数都是相同的,就更不⽤提两个⽂件⾥有完全相同的站点了,这样就给各个站点降⽔的累加处理造成了极⼤的困难(如果⼀开始就有⼈或专门的机构来做这件事,将⼤⼤提⾼科研⼈员的⼯作效率),但本帖不打算过多描述数据处理的情形,因此这个问题就到此为⽌。

2,站点数据中打⽹格和maskout的联系降⽔的站点资料处理完毕并转成grads能识别的⼆进制格式后,就需要给站点数据打⽹格了,这个⽹格是⽤于站点资料差值使⽤的(如果⽤grads,就要⽤格点资料),此时就涉及到要打⼀个什么分辨率的⽹格了,在这次画图过程中,我⼀共打了两个全球⽹格,⼀个是0.1X0.1(细⽹格)的另⼀个是0.5X0.5(粗⽹格)的。

然后按部就班的使⽤了如下的语句:'set mpdset china' * 设定⼀个地图,⽤于只画中国范围内的物理量'define a=oacres(g,tt.2,XXXX)' * 插值函数,把变量tt插值到⽹格g上,其中XXXX代表影响半径'define a1=maskout(a,a-8)' * maskout(n1,n2)⾥第⼀个变量n1是我们要画的物理量,第⼆个变量n2的意思是只画当其值⼤于零时的物理量n1,* 当然n1和n2是⼀⼀对应的,⽽这个例⼦中的意思是,只画物理量a的值⼤于4的部分'define aa=smth9(a1)' * 平滑函数'run province-basemap china aa' * 只画中国范围内物理量下⾯通过格点的分辨率-2种,和oacres中的影响半径做组合实验:(1)粗⽹格+XXXX(50,30,20,10,5,1)见图⼀(2)细⽹格+XXXX(20,10,5,1)见图⼆(3)细⽹格+XXXX(50,30,20,10)见图三(4)粗⽹格+XXXX(50,30,20)50是grads中默认最⼤的数值见图四从这四张图中,可以看到⽐较⼤的差别,这也是我画图时思考的⼀个顺序。

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

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

输出格式
set fwrite { | -be | -le } { | -sq | -st } filename
范例: 输出ASCII格式数据 file=‘output.txt’ ‘set gxout print’ ‘d tem’ rc=write(file, result) rc=close(file)
本节内容回顾
• 站点数据处理
– 图样式及其定制 – 技巧 » defiine ♥♥♥ » 站点客观分析函数
• 统计和输出(set gxout其它选项)
– 统计信息 – ASCII和Binary数据输出(文件格式转换) ♥♥♥
19
LASG动力论坛版
内容提要
请注意标记♥♥♥的地方
一. 引言 二. GrADS绘图软件包安装 三. 运行GrADS绘图软件包 四. 图形显示(D)1— 格点绘图 五. 数据准备(Gr) 六. 图形显示(D)2— 站点绘图 七. 数据分析(A) — 函数的使用 八. 批处理和脚本语言(S) 九. 图形保存和转换
15
LASG动力论坛版
六. set gxout其它选项(D)2
站点数据值输出
set stnprint on | off
ga-> set stat on ga-> d tem
—stat
统计信息 set gxout stat
ga-> set gxout stat ga-> d tem Data Type = grid Dimensions = 0 1 I Dimension = 36 to 109 Linear -2.5 5 J Dimension = 1 to 36 Linear -87.5 5 Sizes = 74 36 2664 Undef value = -32767 Undef count = 0 Valid count = 2664 Min, Max = -48.8 32 Cmin, cmax, cint = -40 30 10 Stats[sum,sumsqr,root(sumsqr),n]: 8574.9 1.14741e+06 1071.17 2664 Stats[(sum,sumsqr,root(sumsqr))/n]: 3.21881 430.708 20.7535 Stats[(sum,sumsqr,root(sumsqr))/(n-1)]: 3.22002 430.87 20.7574 Stats[(sigma,var)(n)]: 20.5024 420.348 Stats[(sigma,var)(n-1)]: 20.5062 420.506

GrADS使用简介

GrADS使用简介

GrADS使用简介谢逸乔云亭1 前言GrADS(Grid Analysis and Display System)是美国马里兰大学气象系Brian E.Doty 开发的气象数据分析与显示软件。

GrADS提供一个全32位交互操作的气象格点数据与站点数据的分析与显示环境,具有强大的气象数据分析能力、丰富的地图投影坐标,以及彩色动画等功能,因此迅速成为国内外气象数据显示的标准平台之一。

近几年,随着PC机的普及、性能的不断提高,GrADS推出了基于PC机的DOS版本, 为需要用到GrADS,却不具备UNIX图形工作站的广大气象工作者带来了方便。

2 软件安装与硬件配置微机版本的GrADS,运行于386或以上的PC机上,也可以在WIN95或WIN NT的DOS环境下运行。

安装GrADS时,将整个目录拷贝到硬盘的某个目录下(例如:C:\GrADS),并根据显示器的分辨率类型,用Set命令在DOS下设置GAVIDEO参数。

有以下几种:Set gavideo=vga VGA,16 color,640*480Set gavideo=ega EGA,16 color,640*350Set gavideo=vga256 VGA,16 color,640*480Set gavideo=svga SVGA,256 color,800*600Set gavideo=xvga XVGA,256 color,1024*768如果显示器和图形卡(显示卡)不支持16色以上的VGA模式,不可强行将参数设成VGA,16色或以上,否则会损坏显示器。

完成以后,在系统的Config.sys文件中加入:shell=c:\/p/e:20483 GrADS文件组成GrADS包括以下几种类型的文件:(1)二进制无格式的原始气象数据文件(*.dat)其数据既可以是格点数据,也可以是站点数据。

它们是从其它气象数据(如站点气象报、格点气象报、模式格点输出结果)转换生成的,格式是二进制无格式数据。

GrADS利用站点数据画空间等值线分布图

GrADS利用站点数据画空间等值线分布图

由于很多同志是做业务的,接触的都是站点资料,这里将详细的介绍如何利用站点资料,画出某变量的等值线图。

第一步:站点资料(txt格式,即十进制格式)转成二进制格式GrADS画等值线图是有要求的,即只能画格点上的二进制数据。

首先,将观测资料按如下格式放在txt文件中:第一列为某站点的纬度,第二列为该站点的经度,第三列为该站点某月平均某一个指数,也就是变量,它可以是降水、气温等。

然后,将该数据转换为二进制,使用以下fortran程序:c----------------------------------------------------------c This program is used to change the format of ascii datac into the form of binary ,which is supported by the GrADSc----------------------------------------------------------program mainreal, dimension(160) :: lat, lon, indopen(1,file='d:\drought\index.txt',status='old')do i=1,160read(1,*) lat(i), lon(i),ind(i)enddoclose(1)call stntogrd(ind)endsubroutine stntogrd(x)character*8 stid(160)do i=1,160stid(i)=char(i)enddoopen(3,file='e:\drought\index.grd',form='binary')tim=0.0nlev=1nflag=1do i=1,160write(3) stid(i),lat(i),lon(i),tim,nlev,nflag,x(i)enddonlev=0write(3) stid(i-1),lat(i-1),lon(i-1),tim,nlev,nflagclose(3)returnend于是得到了二进制格式的变量index.grd,接着我们需要给该二进制数据写一个描述性文件如下(新建一个写字板,取名为"index.ctl"):dset d:/drought/index.grddtype stationstnmap d:/drought/index.mapundef -999.0title drought indextdef 1 linear Jul1951 1movars 1ind 0 99 drought indexendvars到此,二进制数据文件的描述文件写完了,然后,在GrADS命令窗口输入命令“!stnmap”如:ga_> !stnmap系统会提示如:“Enter stn ctl filename:” 输入: d:/drought/index.ctl 系统会生成"index.map"文件。

11GrADS软件介绍

11GrADS软件介绍

1.站点文件内容和格式
文件内容:
2.转换成二进制格式
t1 t2 t3

tn-2 tn-1
tn
station1 station2 station3
Station(n)
end
头信息 站号、经纬度、相 对时刻、层数、 flag
数据值 各种变量、要素的值
头信息:
站号(8字节字符型)+ 纬度(实型)+经度(实型)+ 相对时间(实型)+总层数(整型)+flag(0或1)
GrADS软件介绍
Grid Analysis and Display System (第九节)
本节主要内容:
站点资料绘图
站点文件绘图:
1. 站点文件内容和格式 2. 用Fortran转换成二进制 3. 配置ctl文件 4. !stnmap 生成映射文件 5. 配置格点地图文件 6. 插值 7. 绘图
4. !stnmap
使用stnmap命令生成.map映射文件
5.配置格点地图文件
• 用Fortran生成一个格点数据 (grid.dat) (自己设定格点数,数据较密集时最好分辨率高 一点;数据全部为0.0 即可) • 写好与之相匹配的ctl文件 (grid.ctl)
dset h:\stationdata\grid.dat undef -999.0 title nonthly staion precipitation data xdef 360 linear 0 1 ydef 181 linear -90 1 zdef 1 linear 0 1 tdef 1 linear jan2004 1mo vars 1 grid 0 99 precipitation data endvars

Grads使用手册

Grads使用手册

gxtran
Displays metafiles
stnmap
Maps station data
wgrib
See /wgrib.html
GrADS 英文主页:/grads/
§1.2 基本概念
按磁盘文件记录格式,GrADS 软件包的文件分为如下几类:
gxps,gxpsc,gxpscw
将 GrADS 内 print 命令产生的图元文件分别转换为单色(灰度)、彩色以及反白(即白底)
彩色的 postscript 格式文件,用于硬拷贝输出。语法为:
Technical Report
GrADS究所
大气科学和地球流体力学数值模拟国家重点实验室
( LASG )

关于本手册
本手册是在 1995 年张洪编写的《GrADS 气象图形系统使用方法》及其它相关文档的基础上 汇编而成。主要介绍了 GrADS 的基本用法、使用技巧、及与 GrADS 相关的绘图技术。本 手册将根据软件发展不定期进行修订。
1

令。详见§6。 (4) .exe 系统命令文件,是 GrADS 系统在 DOS 环境下的各执行文件。如 grads.exe 为 GrADS
图形分析和显示命令;dos4gw.exe 为 DOS 的扩展环境;gxps.exe、gxpsc.exe、gxpscw.exe 都是图元文件转换为 postscript 文件的执行文件;gxtran.exe 是图元文件转换到显示器上 显示的执行文件;gx.exe 是将图元文件转换为各种不带 ps 解释器的打印机输出的执行文 件。详见§1.3。 (5) .gmf(.met) GrADS 系统图元输出文件,格式由 GrADS 内定,文件名随用户自定,
(2) .ctl 原始数据描述文件。该文件为纯 ASCII 文件,用以描述原始数据集的基本信息,包 括数据集文件名、数据类型、数据结构、变量描述等等,详见§4。在 GrADS 环境中至 少得首先打开(open)一个数据描述文件,以便后续的操作有数据对象。

GrADS绘图软件使用手3

GrADS绘图软件使用手3

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机器上生成的,而目前不在此类机器上使用。

气象绘图软件GrADS使用要点

气象绘图软件GrADS使用要点

●计算机与气象仪器 ●收稿日期:2002-02-20气象绘图软件GrADS 使用要点高文良 陈忠明 闵文彬(四川省气象科学研究所 成都 610071)摘要:通过介绍GrADS 绘图软件,分析了其优点及难点,指出了GrADS 的使用要点。

关键词:GrADS ;绘图软件;要点中图分类号:TP30214文献标识码:B文章编号:1003-7187(2002)02-0049-021 引言在众多的绘图软件中,针对气象部门的绘图软件GrADS (Grid Analysis and Display System )是一款非常不错的免费共享软件。

它整个系统由C 语言编成,运行速度快,图形显示快速、美观大方,支持多种图形类型的输出。

GrADS 具有丰富的内部函数,可以对资料进行初步的计算和分析处理,而且操作十分简便,易于理解掌握。

它既可以处理格点资料,又可以处理站点资料。

它支持对GriB 码文件、NetCDF 文件的直接读取,并且对气象界最流行的各种数据格式都能正确分析和处理。

用户还可以利用GrADS 的描述语言(GrADS Script )很方便地进行编程、开发。

GrADS 推出后在气象界得到了广泛的使用。

2 基本概念在GrADS 中,每个原始资料数据集都需要一个数据描述文件文件与它相对应。

在数据描述文件中,包括了对原始资料数据文件的名字、数据格式、纬向格点数及间隔、经向格点数及间隔、空中层次数及间隔、时次及间隔、变量数等的说明。

数据描述文件从时间和空间上对数据集的维数作出了明确的规定。

这样,在GrADS 启动后将数据描述文件打开,就可以对整个资料数据集进行处理和分析。

所以,数据描述文件一定要准确,避免任何差错。

数据文件中原始数据的排放次序也有一定的规则。

其排放次序为首先是经度、纬度,然后是高度和物理变量,最后是时次变化。

[1]。

如果改变了数据的排放规则,必须在数据描述文件中进行特别说明。

因此可以将原始数据序列看成是一个五维(或少于五维)的数据场,将每个经向和纬向的数据面看成是一个记录,是整个数据集的一个二维切片。

GrADS

GrADS




参考资料



1、GrADS Tutorial 2、GrADS Reference Card 3、LASG: GrADS Mannual 4、LASG: GrADS 实用绘图讲义,funny@动 力论坛 5、动力论坛GrADS中文讨论区
常见软件


运行GrADS




打开数据: ga->open *.ctl ga->sdfopen *.nc ga->xdfopen test.ddf 查询信息:query ga->query ctlinfo ga->q dims ga->q file 关闭数据文件 ga-> close 3 ga-> close 2 Ga-> close 1 设置维数环境 ga-> set x 1 73 ↵ ga-> set lat -20 60 ↵ ga-> set lev 850 ↵ ga-> set time 00z01Apr2007 ↵ 26 LASG动力论坛版 三. 运行GrADS绘图软件包 • 设置维数环境 ga-> set x 1 73 ↵ ga-> set lat -20 60 ↵ ga-> set lev 850 ↵ ga-> set time 00z01Apr2007 ↵

set annot #color(1) thick(6) set frame on | off | circle set xyrev on set zlog { on | off | swap | undefine } set coslat {on | off } set tlsupp { year | month } set grid {on| off| horizontal| vertical } linestyle #color set gridln {auto | off | #color } set xlint int set ylint set xaxis starrt end int set yaxis set vrange vlo vhi set vrange2 set xlpos offset(0) { b | t } set ylpos…{l|r} set xlopts #color(1) thick(4) size(0.12) set clopts #col(-1) thick(-1) size(0.09) set ylopts set ylevs set xlevs x1 x2 x3… set ylabs set xlabs b1|b2|b3|… set ylab set xflip { on | off } set yflip set xlab { on | off | aut draw ylab draw title title_string
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GrADS站点资料的使用
台站型离散资料画图的一般原则
1、把台站资料r.dat写成二进制文件r.grd
一般而言,台站资料都是文本格式的,须用专门的程序写成带有站号、经度、纬度等的二进制文件。

例如:对某一时次的降水资料r.dat有如下形式:
lon lat Precipitation
119.8 30.6 0
119.8 30.616 0
119.8 30.632 0
119.8 30.648 0
119.8 30.664 0
119.8 30.68 0
119.8 30.696 0
119.8 30.712 0
119.8 30.728 0
119.8 30.744 0
119.8 30.76 0
119.8 30.776 0。

该数据只有一个时次
则相应的程序stn.f如下:
parameter(n=10201)
integer r1(n)
real lat(n),lon(n),r(n)
character*8 zh(n)
open(1,file='d:\common\1.txt',form='formatted',status='old')
do i=1,n
read(1,*)lon(i),lat(i),r1(i)
r(i)=r1(i)
enddo
do i=1,n
zh(i)=char(i)
enddo
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
open(9,file='d:\common\r.grd',form='binary',status='unknown')
open(99,file='d:\common\rr.txt')
do 100 i=1,n
tim=0.0
nlev=1
nflag=1
write(9)zh(i),lat(i),lon(i),tim,nlev,nflag
write(9)r(i)
write(99,200)lon(i),lat(i),r(i)
200 format(f8.3,f8.3,f6.2)
100 continue
nlev=0
write(9)zh(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
close(9)
! do i=1,160
do i=1,n
if(r(i).lt.0.0)then
write(*,*)lon(i),lat(i),r(i)
endif
enddo
! write(*,*)i,zh(5000),lat(5000),lon(5000),tim,nlev,nflag,r(5000)
pause
! enddo
end
2、编写r.grd数据的数据说明文件r.ctl
dset d:\common\r.grd
dtype station
stnmap d:\common\r.map
undef -999.0
title station data
tdef 1 linear jan1998 1mo
vars 1
r 0 99 grid data prepared for oacres function
endvars
3、用r.ctl生成r.map文件
实际上,是在GrADS中运行可执行文件stnmap.exe,如何运行
对于自带显示窗口的GrADS1.8版本的:
进入命令窗口后,在提示符下输入“!stnmap”
ga_>!stnmap
在出现的信息提示处输入r.ctl
Enter stn ctl filename: D:\r.ctl
4、生成格点文件
因为GrADS只识别格点数据,所以需要把站点上的资料通过插值函数插值到某个格点文件上才能被识别。

根据r.dat提供的信息来写格点文件grid.grd(二进制)
要求:(1) grid.grd文件的精度要高于或等于r.dat的精度
(2) grid.grd文件的范围要大于或等于r.dat的范围
(3)grid.grd文件的每个点上均赋值1(范围与r.dat相同)
(4)当grid.grd文件的范围大于r.dat的范围时,除了相同范围的每个点赋值为1外,其余外围的点也都赋值为1
(5)grid.grd文件的时间一定要与r.dat时间一致!!!
生成grid.grd文件的程序grid.for
!!!!!!!!1
parameter(n=31)
real lat(n),lon(n)
real s(n,n)
open(1,file='d:\common\grid.grd',form='binary')
lat(1)=30.0
lon(1)=119.0
do i=1,n-1
lat(i+1)=lat(i)+0.1
lon(i+1)=lon(i)+0.1
enddo
do i=1,n
do j=1,n
s(i,j)=1
enddo
enddo
write(1)s
end
5、编写grid.grd的.ctl文件:grid.ctl
dset d:\common\grid1.grd
undef -999.0
title Sample GRIB Data
xdef 71 linear 70 1
ydef 41 linear 15 1
zdef 1 linear 1000 1
tdef 1 linear jan1998 1mo
vars 1
g 0 99 grid data prepared for oacres function
endvars
6、把r.grd插值到grid.grd的网格点上,并画图
示范.gs文件如下:
'reinit'
'open d:\common\grid.ctl'
'OPEN d:\common\r.ctl'
*'enable print d:\common\r.gmf' 'set grid off'
'set mpdset cnworld'
'define a1=oacres(g,r.2)'
'define b1=maskout(a1,g-0.5)' 'define bb1=smth9(b1)'
'set black -10000 0'
'set lon 119.8 121.4'
'set lat 30.7 32.1'
'set clopts 1 1 0.15'
*'d bb1'
'd b1'
*'print'
*'disable print'
'printim d:\common\r.gif white'。

相关文档
最新文档