《GrADS繪圖與編程》全套教學課件_第1頁
《GrADS繪圖與編程》全套教學課件_第2頁
《GrADS繪圖與編程》全套教學課件_第3頁
《GrADS繪圖與編程》全套教學課件_第4頁
《GrADS繪圖與編程》全套教學課件_第5頁
已閱讀5頁,還剩340頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、GrADS繪圖與編程課時:32學時(16+16) 教材:GrADS氣象繪圖系統(tǒng)用戶使用手冊學習要求: 熟悉基本概念及基本繪圖指令,學會簡單編程。掌握一定繪圖技巧,為以后實習及畢業(yè)論文做準備。 目前,比較流行的氣象繪圖軟件有 : MICAPS Excel 1D圖(線/直方/風玫瑰/散點/圖) GrADS 1D(線/直方/散點)圖, 2D平面圖 Surfer 2D平面圖, 3D曲面圖 NCL 1D圖, 2D平面圖, 3D曲面圖 MATLAB 1D圖, 2D平面圖, 3D曲面圖 IDL 1D圖, 2D平面圖, 3D曲面圖 第1章 GrADS繪圖軟件概述 GrADS (Grid Analysis an

2、d Display System)是一款在氣象界應用廣泛的數據處理和顯示的繪圖軟件。 Gr 格點 / 站點 擅長格點數據處理 A 數據分析 簡單的計算和診斷 D 圖形顯示 圖樣選擇、定制、保存 S 系統(tǒng),也可將S理解成腳本(Script)編程1.1主要特點 專業(yè)性強,是專門為從事大氣、海洋研究的科研和業(yè)務人員設計的開放軟件,可以從互聯(lián)網上免費下載適用于目前流行的各種操作系統(tǒng),如:PC機的Windows9X2000XP、WinNT、 Linux 和工作站下的Unix等; 可用于4D數據的分析,即:經度、緯度、層次(氣壓層、高度層等)和時間(lon lat lev time)4維。數據可以是格點化

3、的資料或離散點資料(如站點資料); 可以處理多種數據格式,如:二進制數據格式,GRIB碼格式、NetCDF(.nc)、HDF-SDS等通用數據格式;所處理的數據文件體積小,運算速度快,出圖快; GrADS系統(tǒng)采用命令行輸入的方式交互式地顯示圖形,并有多種命令對數據進行再加工,如求平均、計算渦度、散度、垂直積分、差分計算等;出圖類型多樣化,可以繪制如:等值線、流線、矢量圖、站點填圖、折線圖、直方圖等多種圖形;圖形可以按多種格式存儲,如gmf、png、gif等。 提供多種輔助工具軟件。如看圖、打印、圖形格式轉換(gv)等工具。 1.2 網絡資源 登錄GrADS的主頁地址:/grads 大氣所網站下

4、載1.8版本:/xglm/xzq/graph/graph.asp大氣所網站下載中文使用手冊:/xglm/2007/10/xuiq4v4915.htm注意:該手冊為PDF文件格式,需下載Adobe Reader 軟件進行閱讀。1.3 軟件的安裝與啟動 A、Windows操作系統(tǒng)下安裝的Win32e GrADS(Version 1.8SL11),介紹該版本的安裝步驟及啟動后的操作界面。 1. 安裝步驟(1)按網絡資源的提示下載: grads-1.8sl11-win32e.exe(2)雙擊安裝圖標,根據提示進行安裝 安裝路經可以自己選擇,缺省安裝 路徑為: C:Program FilepcGrADS

5、 安裝后PcGrADS目錄下的子目錄主要有: dat/ 字體 font0.dat font5.dat 地圖底圖 lowres, mres, hires 等 lib/ 腳本庫,一些gs文件 win32e/ 執(zhí)行文件,.exe文件(3)安裝完成后,可以從“開始”菜單的“程序”選項里看到“Win32e GrADS”選項,這里面包含多種模式的GrADS,通常使用經典型,即“Grads” ;(4)為了使用方便,可以為 “Grads”圖標創(chuàng)建桌面快捷方式。同時,可以為另一個常用工具“gv32”創(chuàng)建桌面快捷方式,以便用于后面的看圖及圖形格式轉換。 Grads.exe經典GrADS,支持Grib、NetCDF

6、、IEEE格式的數據。GradsC.exe壓縮模式的GrADS,占內存最小。GradsGUI.exe(假)圖形界面的。GradsHDF.exe與經典GrADS相當,多增加了HDF-SDS格式。GradsNC.exe與經典GrADS相同。gv32.exeWindows下看圖(metafile格式)及格式轉換工具。GrADS常用命令列表特別提示:設置環(huán)境變量:“我的電腦”右鍵菜單 屬性 高級 環(huán)境變量 新建變量GASDIR C:Program FilepcGrADS datGASCRP C:Program FilepcGrADS lib 修改PATH變量, 增加路徑C:Program Filepc

7、GrADSlibC:Program FilepcGrADSdatC:Program FilepcGrADSwin32e特別提示: 補?。嚎截惖貓D數據cn, cnworld, cnriver, cnwater到 C:Program FilepcGrADSdat下拷貝stnmap.exe和gribmap.exe 到 C:Program FilepcGrADSwin32e下特別提示:有的電腦安裝在默認目錄下,cbarn等不能調用原因:安裝目錄的問題 因為默認安裝在 C:Program File下, Program File中間有空格解決:安裝在c:下,或者文件夾名字沒有空 格的文件夾下,再重新設置環(huán)

8、境變量 建議裝在c:下!1.9版本的安裝與之類似!論壇:氣象家園/forum.php?mod=forumdisplay&fid=36動力論壇 /bbs/B、Linux系統(tǒng)下的安裝:安裝文件: 0/grads/1.9/grads-bin-1.9b4-linuxRH9.tar.gz 字體/底圖:0/grads/data.tar.ZLinux / UNIX下的安裝:將軟件包解壓縮到某個目錄, 如: /usr/local/grads為便于管理, 可分子目錄分別存放 bin/ 執(zhí)行文件 gradsc, gradsnc, 等 dat/ 字體 font0.dat font5.dat 地圖底圖 lowres,

9、 mres, hires 等 lib/ 腳本庫 cbar.gs 等設置環(huán)境變量: 很重要Cshell, 在 .cshrc 文件中添加:# 執(zhí)行文件路徑setenvPATH /usr/local/grads/bin:$PATH# 字體和底圖文件路徑setenvGADDIR /usr/local/grads/dat# 腳本庫的路徑setenvGASCRP /usr/local/grads/lib2.啟動GrADS 兩種方法:(1)點擊Windows窗口菜單“開始/程序/Win32e GrADS/Grads”打開操作窗口。(2)雙擊桌面“Grads”快捷圖標打開操作窗口。 最底行顯示信息為: Lan

10、dscape mode ? (no for portrait) :_ 選擇繪圖區(qū)域為橫放還是豎放?“Landscape”模式:11X8.5英寸風景畫形式,橫放圖形輸出窗口,輸入“L”回車或者直接按回車鍵是“Landscape”模式;“Portrait”模式:8.5X11英寸肖像畫形式,豎放圖形輸出窗口,輸入“P”回車或者輸入“no”就是用“Portrait模式”。 字符窗口和圖形窗口就回重疊出現(xiàn)字符窗口中出現(xiàn)ga-提示符,即可輸入命令1.4 使用流程 數據處理編寫ctl和gs文件繪圖后期處理ctl:原始數據描述文件。該文件為純 ASCII 文件,用以描述原始數據集的基本信息,包括數據集文件名、

11、數據類型、數據結構、變量描述等等 。gs:GrADS 控制文件 。批處理 GrADS 系統(tǒng)設置和命令 。GrADS并不直接使用“數據文件”,而是通過“描述文件” 間接使用“數據文件”。第2章 數據處理在使用GrADS繪圖前,必須使所用數據文件滿足GrADS的數據格式要求。 2.1 各類數據格式的特點一般二進制無格式直接或者順序記錄的數據格式:可以是格點數據或站點數據,可以用Fortran或者C語言讀寫。需要數據描述文件.ctl GRIB碼數據格式:是自定義的數據格式,壓縮率高,占用空間小。例如NCEP提供的數據資料。 NETCDF(.nc)等通用數據格式:自定義數據格式,精確性好,便于傳輸。

12、文件中自帶描述文件。2.2 數據文件的轉換 1. 轉換方法 轉換文件的數據存放格式,一般是通過Power Station或Visual Fortran等軟件使用Fortran或者C語言來編程轉換。 2.數據存放形式 二進制數據排放順序從內循環(huán)到外循環(huán)依次是: x(經度):從西到東 y(緯度):從南到北 z(高度層數):從低層到高層 vars(各種物理變量) t(時次)x(lon) y(lat) z(lev) vars(不同變量) time 任何一維可省略。 1 2 3 4 5. x y5 4 3 2 1Z3. 舉例(格點資料) 現(xiàn)有ASCII碼(十進制存放格式)數據資料文件u.dat、v.da

13、t和sst.dat, 其空間范圍:60-150E,0-40N; 層次:u、v為850、 200hPa; 時段:1982.1-1985.12; 分辨率:2.5*2.5。 要求編寫出將這三個文件轉換成二進制無格式直接存?。℅rads格式.grd)文件的Fortran程序。 編程時數組大?。篨方向:150-60=90,90/2.5+1=37Y方向:40-0=40,40/2.5+1=17Z方向: u、v為850、 200hPa ,Z為2 sst為海表溫度,只有一層,Z為1T時次:月資料,4年,共48個月Fortran程序編寫如下: ! 定義一個X,Y,Z方向的格點數以及總時次nt parameter(

14、nx=37,ny=17,nz=2,nt=48)! 定義數組 dimension u(nx,ny,nz,nt),v(nx,ny,nz,nt),sst(nx,ny,nt) ! 打開原始數據文件,如果數據文件和Fortran程序在一個文件夾下,打開數據文件時可以不寫路徑。 open(1,file=u.dat) open(2,file=v.dat) open(3,file=sst.dat)! 打開目標文件,recl為記錄的長度,對于直接存取文件必須指定記錄長度 。 open(12,file=mhy.grd,form=unformatted,#access=direct, recl=nx*ny*4) !

15、 把數據文件讀入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 do 51 iz=1,nzread(2,*) (v(i,j,iz,it),i=1,nx),j=1,ny) 51 continueread(3,*) (sst(i,j,it),i=1,nx),j=1,ny) 100 continue!將數據資料寫入新文件中, irec重新進行記錄累加irec=0 do 200 it=1,nt do 30 iz=1,nz irec=irec+1 write(12,rec=irec) (u(

16、i,j,iz,it),i=1,nx),j=1,ny) 30 Continue do 31 iz=1,nz irec=irec+1 write(12,rec=irec) (v(i,j,iz,it),i=1,nx),j=1,ny) 31 continue irec=irec+1 write(12,rec=irec) (sst(i,j,it),i=1,nx),j=1,ny) 200 continueendirec=0 do 200 it=1,nt do 30 iz=1,nz irec=irec+1 write(12,rec=irec) (u(i,j,iz,it),i=1,nx),j=1,ny) 30

17、 Continue do 31 iz=1,nz irec=irec+1 write(12,rec=irec) (v(i,j,iz,it),i=1,nx),j=1,ny) 31 continue irec=irec+1 write(12,rec=irec) (sst(i,j,it),i=1,nx),j=1,ny) 200 continue如果不考慮采用無格式直接方式存取文件的話,可以使用下面的編程形式,較為簡單。parameter(nx=37,ny=17,nz=2,nt=48)dimension u(nx,ny,nz,nt),v(nx,ny,nz,nt),sst(nx,ny,nt)open(1,

18、file=u.dat)open(2,file=v.dat)open(3,file=sst.dat)! 打開目標文件open(12,file=mhy.grd,form=binary) ! 打開原始數據文件,如果數據文件和Fortran程序在一個文件!夾下,打開數據文件時可以不寫路徑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 do 51 iz=1,nzread(2,*) (v(i,j,iz,it),i=1,nx),j=1,ny) 51 continueread(3,*) (sst(

19、i,j,it),i=1,nx),j=1,ny) 100 continue! 把數據文件讀入do 200 it=1,nt do 30 iz=1,nz write(12) (u(i,j,iz,it),i=1,nx),j=1,ny) 30 Continue do 31 iz=1,nzwrite(12) (v(i,j,iz,it),i=1,nx),j=1,ny) 31 continuewrite(12) (sst(i,j,it),i=1,nx),j=1,ny) 200 continueend!將數據資料寫入新文件中注意事項:二進制寫入的數據必須是實型的(real)若數據為整型,寫入時要轉換成實型的re

20、al(iu(i,j,k,it)2.2 數據描述文件(.ctl) GrADS繪圖不能直接使用“數據文件”,而是通過“數據描述文件”間接使用“數據文件”。 1. 數據描述文件的概念 數據描述文件是原始數據文件的描述文件。用以描述原始數據集的基本信息,包括數據集文件名、數據類型、數據結構、變量描述等等 。2. 數據描述文件的形式 以下是另一個格點數據描述文件的例子:* this is an example to demonstrate the data descriptor fileDSET ua.datTITLE Upper Air DataDTYPE gridOPTION byteswapped

21、UNDEF -9.99E33二進制數據的位存放順序取反序 *注釋行 XDEF 80 LINEAR -140.0 1.0YDEF 50 LINEAR 20.0 1.0ZDEF 10 LEVELS 1000 850 700 500 400 300 250 200 150 100TDEF 4 LINEAR 0Z10apr1991 12hr 西經140度vars 6slp 0 99 sea level pressurez 10 99 heightst 10 99 tempstd 6 99 dewpointsu 10 99 u windsv 10 99 v windsendvars3.數據描述文件的構成

22、 (1)每個數據描述文件一般包含以下幾項:被描述的數據文件名(dset)該數據說明文件的標題(title)數據類型、格式和選項(dtype, format, option)時間、空間維數環(huán)境設置(xdef, ydef, zdef, tdef)變量定義(vars, endvars) (2)數據描述文件中各記錄的含義:DSET 數據文件名 給定與此數據描述文件相對應的二進制原始數據文件名(可包含路徑)。若兩者位于同一目錄,前面的路徑可以省略或以“”開始,代表兩者位于同一目錄。若不在同一目錄下,應給出路徑參數。如:d:/mydata/test.grdTITLE string 用字符串string簡略

23、描述數據文件的內容。即:數據的標題UNDEF value 定義缺測值。 一般給一很大的正值或負值。GrADS在運算操作和圖形操作時將忽略這些值點。OPTIONS 定義數據格式選項,keywords 有: 缺省時為 direct 直接記錄格式(form=binary) 自北向南的數據 自高層到低層的數據 順序無格式存貯的數據二進制數據的位存放順序取 反序 在SUN, SGI等機器上生成 的數據在PC, DEC等機器上生成 的數據服務器個人電腦big-endian、little-endian 用于自動改變二進制位存放順序 多個時間序列原始數據文件用一個數據描述文件統(tǒng)一地描述描述這些原始數據時采用的

24、選項,這些數據文件的文件名形式由 dset 定義的形式命名文件名,提示所含數據的時次。例如:一個逐小時的數據集每 24小時數據放到一個文件中,每個文件名形式為: 1may92.dat ,2may92.dat,3 may92.datdset %d1%mc%y2.dat options templatetdef 72 linear 0Z1may1992 1hr 定義時間范圍和增量 例如:正確的替換為: %y2 兩位數年 %y4 4 位數年 %m1 1 或2 位數月 %m2 2 位數月(用 0補齊 1 位數) %mc 3 字符月份縮寫 %d1 1 或2 位數天 %d2 2 位數天 %h1 1 或2

25、位數小時 %h2 2 位小時 設置X方向格點與經度的對應關系XDEF number 或 XDEF number number(=1)給定格點數,整形; LINEAR指明是等間隔分布格點, Start起點坐標,負數表示西經; increment網格間距。 LEVELS參數指明是不等間隔分布格點,列 出具體每個格點的坐標值(以空格分開)。 設置Y方向格點與緯度的對應關系YDEF number 或 YDEF number 或 YDEF number mapping表示映射方式,有以下幾種:GAUSR15 - 高斯R15 緯度 (Gaussian) GAUSR20 - 高斯R20 緯度 GAUSR30

26、 - 高斯R30 緯度 GAUSR40 - 高斯R40 緯度 在linear中,Start起點坐標負數表示南緯;在高斯映射中, Start起點坐標表示高斯緯度。方向: 自西向東, 自南向北 (永遠不變!)單位: 個 緯度/經度正負值: 以東為正/以北為正xdef 144 linear 0 2.5ydef 73 linear -90 2.5方向維數定義格點數坐標值線性增加起始坐標坐標間隔YDEF 20 GAUSR40 15 表示共有20個Y方向網格點,起始點為高斯R40網格下的高斯緯度15(即64.100S),實際這20個網格點對應的緯度值為:-64.10, -62.34, -60.58, -5

27、8.83, -57.07, -55.32, -53.56, -51.80, -50.05, -48.29, -46.54, -44.78, -43.02, -41.27, -39.51, -37.76, -36.00, -34.24, -32.49, -30.73設置垂直網格點與氣壓面的對應關系ZDEF number 或ZDEF number zdef 7 levels 1000 850 700 500 300 200 100 列出具體坐標值方向: 自下而上單位: 層 hPa/其他 TDEF number LINEAR start-time increment 設置網格值與時間的映射關系 。時

28、間表示法 :hh:mmZddmmmyyyy hour minute day mon yeartdef 12 linear 00:00z21jan2000 1mo 時間步長只有l(wèi)inear關鍵字起始時間必須按照上述格式寫年份用4位數寫21日00:00時按情況可省略2000年1月(不可省略)3mn 分鐘6hr 小時1dy 天1mo 月1yr 年例如:12Z1JAN1990 14:20Z22JAN1987 JUN1960 Z:世界時12Z代表北京時間20點VARS number 變量描述開始,同時給出變量個數number 。 abrev levs units description .abrev,變

29、量名稱,為 1 到8 個字符組成的該變量的縮寫名,畫圖或處理數據將用到,以字母開頭levs,數字,代表變量層數,0表示只有一層units,單位,為GRIB預留,給99description,對變量的文字描述,最多40個字符用ENDVARS表示數據描述文件結束。 dtype 用于說明數據格式的類型 當數據為格點binary格式時省略dtype的可選參數 grib station 站點數據 hdfsds netcdfv1.9版本新增 ctl書寫注意事項 每行頂格寫;雖然大小寫沒關系, 推薦在一個關鍵字中都用 大寫或都用小寫; 如寫成 dset, 而不寫成 DsEt;每行記錄的各項以空格分開;每行記

30、錄不超過80個字符;注釋行請用 * 開始, 并頂格寫;不能出現(xiàn)在變量列表中,即:在 vars endvars 之間不要寫注釋行;不要在GrADS中使用制表(tab)鍵!4.數據描述文件的建立 數據描述文件為純文本格式,可用一般 的編輯器產生(如記事本,寫字板等)。 描述文件編輯完成后,保存時為.ctl。 注意事項: 如果電腦中常用文件類型隱藏時,請修改該設置。打開“我的電腦”,打開在窗口第一行第五個“工具” ,選“文件夾選項”,點“查看”,將滾動條下拉至“隱藏已知文件類型的擴展名”,將其前面對號去掉,點“確定”即可。鼠標右鍵 新建 文本文檔,打開,寫入ctl內容,然后保存為file.ctl。d

31、set mhy.grdundef -9.99E+33title NCEP/NCAR REANALYSIS PROJECTxdef 37 linear 60.0 2.5ydef 17 linear 0.0 2.5zdef 2 levels 850 200tdef 48 linear JAN1982 1movars 3u 2 99 u wind(m/s)v 2 99 v wind(m/s)sst 0 99 TSFC DATAendvars打開ctlopen h:gradssst.win.ctl5、netCDF格式數據 ECMWF / NCEP 再分析資料等 常用后綴 .nc 自帶數據內容說明(自描

32、述)一般分辨率為2.52.5或者11 標準NC格式, GrADS可直接處理,fortran ga- sdfopen filename.nc 特別提醒:雖然GrADS支持這種格式的數據,但是涉及到要用程序對數據進行處理時,F(xiàn)ortran程序并不支持這種格式的數據。如果只是使用這類數據進行畫圖和GrADS的命令處理,則可以直接操作。如果要用于程序使用的話,應該利用命令“fwrite” 將所用數據提取為“.grd”的二進制數據文件,以后再用于編程。6、GRIB格式數據T213, NECP/NCAR 等常用后綴 .grb需 .ctl 和 .idx 文件一起使用用grib2ctl.exe生成數據說明(描

33、述)文件 .ctl用gribmapi test.ctl 生成映射文件 .idx1.8版本需另外下載放到win32e下!用grib2ctl.pl 生成.ctl的方法:1、從“開始”菜單的“運行”選項里輸入“cmd”進入DOS狀態(tài),然后cd c:PCGrADSwin32e。2、在該路徑下輸入命令: grib2ctl 路徑/model.grb 路徑/model.ctl 這樣就可以在指定路徑下生成數據文件model.grb的數據描述文件model.ctl.注意:命令中間的“”符號不能缺少,生成的數據描述文件的路徑和文件名都是用戶自己指定的 。Grib2ctl.exe所在文件夾下用gribmapi te

34、st.ctl 生成映射文件 .idx:繼續(xù)在C:ProgramPCGrADSwin32e下輸入命令: gribmap -i 路徑/model.ctl 這樣在原來存放數據文件model.grd的目錄下自動生成數據文件的映射文件“model.idx”。在GrADS的命令窗口ga-提示符后輸入命令: open 路徑/model.ctl 即可使用model.grd數據.GRIB格式數據ctl寫法特別提醒:雖然GrADS支持grib格式的數據,但是涉及到要用程序對數據進行處理時,F(xiàn)ortran程序并不支持這種格式的數據。如果只是使用這類數據進行畫圖和GrADS的命令處理,則可以直接操作。如果要用于程序使

35、用的話,應該利用命令“fwrite” 將所用數據提取為“.grd”的二進制數據文件,以后再用于編程。7、站點數據文本格式,點開可見數據值50136臺站06-07年逐日要素值,有說明文件 年份 月份 日期臺站號緯度經度海拔高度日平均氣壓(0.1hpa)日平均氣溫(0.1).1951-2005年7月160站月降水量160站站點號和經緯度文件: id lon lat5035351.72 126.655063248.77 121.925052749.22 119.755043450.45 121.705055749.17 125.235074547.38 123.925075647.43 126.97

36、5078847.23 131.985087346.49 130.175097845.28 130.955095345.75 126.775409444.57 129.60 dimension rain(160,55) dimension hp(160),ae(160,55) dimension alat(160),alon(160) integer idx(160) character*8 id(160)!讀入站點號和經緯度資料 open(21,file=id160.dat) do ist=1,160 read(21,(i5,2f7.2)idx(ist),alat(ist),alon(ist)

37、 enddo close(21)!讀入降水資料 open(41,file=r1607) do iy=1,55 read(41,*)(rain(ii,iy),ii=1,160) enddo close(41)!求55年平均值 do idx=1,160 hp(idx)=0.0do it=1,55 hp(idx)= hp(idx)+rain(idx,it)enddo hp(idx)= hp(idx)/55 enddo!求距平值 do idx=1,160do it=1,55ae(idx,it)=rain(idx,it) -hp(idx)enddo enddo對數據進行處理!距平值寫成grads可以識別

38、的站點數據!將整數數組idx轉化成字符型數組id,id是8個字符,這個是固定的 do i=1,160write(id,(i5)idx(i) !或者 id(i)=char(idx(i) enddo!打開新文件,存儲站點數據open(41,file=arain7.tu.grd,form=binary)do it=1,55iflag=1 !iflag”取1表示有地面變量,取0表示記錄中沒有地面觀測變量。ilev=1 !ilev取1表示一個時次記錄的開始,取0表示一個時次記錄的結束time=0.0 !time為本報的時次,不是一個確定的時刻值,只是該時次的 !相對值 do ist=1,160write

39、(41)id(ist),alat(ist),alon(ist),time,ilev,iflag,ae(ist,it) enddo! 給出一個特別記錄,表示這個時間組的記錄結束 ilev=0 !取0表示一個時次記錄的結束 write(41)id(160),alat(160),alon(160),time,ilev,iflagenddoclose(41)end站點數據Ctl:dset d:data arain7.tu.grddtype stationstnmap d:datarain.map undef -999.0title rain tdef 55 linear JUl1951 1yrvars

40、 1rain 0 99 anomaly rainfall dataENDVARS站點映射文件名字.map的生成stnmap 用于將觀測站點數據與圖形顯示時的站點圖建立鏈接以加速顯示。語法為: ga-stnmap -i 站點數據描述文件路徑/*.ctl 也可直接進入 stnmap 交互式操作:stnmap.exe位于pcgrads目錄中win32e中, 雙擊進入后輸入:站點數據描述文件路徑/ *.ctl 站點數據小結格式是死的!1. 每個時次的站數隨意;2. 每組站點報是否包含地面報隨意;是否包含高空報也隨意;3. 地面報是一個整體, 每次出現(xiàn)時要素及其順序須完全相同;4. 高空報也是一個整體,

41、 每次出現(xiàn)時要素及其順序、層次須完全相同;5. time表示的是某組站點報相對于 .ctl文件中坐標時刻的時間偏差, 通常取值范圍: time -0.5, +0.56. stnmapi 出錯, 排除.ctl文件問題外, 一定一定是數據格式不對!格點文件的生成:雖然GrADS系統(tǒng)開發(fā)了一些支持站點資料的功能,但其強大功能的運用主要體現(xiàn)在處理格點資料上,所以實際應用時,為了更廣泛深入的使用站點資料,常常是將站點資料通過插值函數插值到某個格點文件上然后再使用。這個格點文件(定為“grid.grd”)可以根據原有站點資料的信息經過編程生成。 在編輯grid.grd程序時,需要注意以下幾點要求:grid

42、.grd文件的精度要高于或等于站點數據的精度;grid.grd文件的范圍要大于或等于站點數據的范圍;grid.grd文件的每個點上均賦值為1;grid.grd文件的時間一定要與站點數據時間一致。下面給出生成格點文件“grid.grd”的Fortran程序,編寫如下:parameter(nx=71,ny=41)real lat(ny),lon(nx)real s(nx,ny)open(1,file=d:datagrid.grd,form=binary)lat(1)=15.0lon(1)=70.0do j=1,ny-1lat(j+1)=lat(j)+1.0enddodo i=1,nx-1lon(i

43、+1)=lon(i)+1.0enddo do i=1,nx do j=1,ny s(i,j)=1 enddo enddo write(1)(s(i,j),i=1,nx),j=1,ny)end與該格點文件相對應的數據描述文件grid.ctl如下:dset d:datagrid.grdundef -999.0title Sample GRID Dataxdef 71 linear 70 1ydef 41 linear 15 1zdef 1 linear 500 1tdef 1 linear jul1951 1movars 1g 0 99 grid data endvars有了這個格點文件及與其相對

44、應的數據描述文件后,就可以通過GrADS插值函數將站點資料插值到該格點文件上然后使用了。 第3章 基本操作命令 GrADS系統(tǒng)的運行方式,是采用命令行輸入的方式交互式地顯示圖形。 3.1 基本命令 啟動GrADS系統(tǒng)后,在ga-提示符后輸入命令。在交互式環(huán)境內常用基本命令如下: open、 set、 display、 clear 下面逐一介紹。 open 數據描述文件名 open命令用于打開GrADS的數據文件,啟動GrADS后首先需要打開至少一個數據描述文件,命令如下: open 路徑filename set 各類選項 set命令用于設置各種環(huán)境參數,包括維數環(huán)境、圖形類型、圖形要素、屏幕顯

45、示等等。(詳見第4章) display(或d) 表達式 display命令是對表達式處理后進行屏幕圖形顯示。最簡單的表達式是變量名的縮寫。 clear(或c) clear是清屏命令,清除圖形窗口的內容。 quit quit命令用于退出GrADS系統(tǒng)。 query(或q) 選項 query是系統(tǒng)環(huán)境設置的查詢命令。 如query define:可知道定義了哪些變量 dims:當前的維數環(huán)境 file n:查詢第n號描述文件的內容 files:打開n個文件的次序 gxinfo:用在d之后,告訴用戶圖的一些信息 shades:用在d之后,告訴用戶一些陰影的信息 time:時間設置信息 define

46、臨時變量名=表達式 define命令用于定義新的變量,所定義的新變量可以用于隨后的表達式中。 modify 臨時變量名 時間序列的類型 modify命令可將自定義的變量聲明為氣候值,用于后面的時次代換。 draw 選項 draw是低級繪圖指令,可以直接進行所指定的圖形元素的操作,如繪制字符串,直線,標記符號等。 run *.gs run命令用于執(zhí)行文件*.gs中定義的操作。 生成圖形文件的命令第一種方法(print命令): enable print *.gmfprintdisable print打開磁盤文件(沒有時創(chuàng)建,已存在時刷新),用于存放隨后 print 命令轉換生成的當前屏幕圖形的圖元

47、數據將當前圖形窗口的圖形轉化為圖元數據,存放在先前 enable 命令指定的磁盤文件中,每執(zhí)行一次 print 即向該文件中附加一幅窗口圖形。 關閉圖形硬拷貝輸出轉換只有執(zhí)行了disable命令后,print命令的結果才真正存于文件中。第二種方法(printim命令):形式: printim filename option 在GrADSv1.8以上版本有效,可以在批處理文件中使用。 filename:輸出的目標文件名,若已存在,則將覆蓋options :有多個選項時可以任意次序排列。options選項如下: gif:輸出 GIF格式文件(缺省為 PNG 格式), black:采用黑色背景(缺省

48、為當前的 display設置), white:采用白色背景(缺省為當前的 display設置), xNNN:水平尺寸為 NNN 個象素yNNN:垂直尺寸為 NNN個象素。例:輸出1000 x800 的 PNG 圖象: printim h:out.png x1000 y800輸出800 x600 白色背景的 GIF 圖象: printim h:out.gif x800 y600 whitereset reset命令用于清除掉所有set命令的設置,但open命令仍起作用。 reinit 使用reinit命令后,系統(tǒng)將回到剛進入GrADS時的狀態(tài)。 3.2 實例應用 所用的演示數據,是從GrADS網

49、站下載獲得,地址如下:/grads/sprite/tutorial 下載數據文件model.le.dat和數據描述文件model.le.ctl,將其存于硬盤上的某一目錄下,如: C:PCGrADSmodel。 1.數據說明 model.le.dat是二進制格點數據文件,為一組模式輸出的全球5天的數值預報結果。有7個層次:1000、850、700、500、300、200、100hPa,多個要素:ps、u、v、z、t,時間從1987年1月2日開始,間隔1天,已知X方向間隔為5個單位,Y方向間隔為4個單位。 關于數據文件model.le.dat的具體說明,可以打開model.le.ctl文件查看。

50、2. 示例演示啟動GrADS后,選擇圖形輸出窗口的方式(L或P),然后在命令窗口ga-提示符后輸入命令,通過圖形輸出窗口可以觀察輸出結果。 open d:gradsdatamodel.ctl q filed ps 畫出第一個維度下的地面氣壓場分布圖clear clears the displayset lon -90 sets longitude to 90 degrees Westset lat 40 sets latitude to 40 degrees Northset lev 500 sets level to 500 mbset t 1 sets time to first time

51、 stepd z 數值set lon -180 0 (重新設置維數環(huán)境)d zcset lat 0 90d zcreset 清除設置set lon 60 120set lat 0 90set lev 500set t 2define fs=sqrt(u*u+v*v)d fsprintim d:gradsdataz500.png white 存圖creinitquit 第4章 各類參數設置 set是一項非常重要的命令,用于設置各種運行環(huán)境的參數,包括維數環(huán)境、圖形類型、圖形要素、屏幕顯示等等。 4.1 維數環(huán)境的設置 雖然在數據描述文件中給出了各物理變量數組的時空維數范圍,但在GrADS 運行環(huán)

52、境中還需設定全數據集中參與操作的部分或全部數據集的維數情況,以供以后的表達式、顯示命令等使用。這就是維數環(huán)境的設置。 1. 維數環(huán)境的概念 GrADS系統(tǒng)視每一個物理變量(VAR)場為一個四維數據集(4D data set),即包括三維空間(x,y,z)和一維時間(t)。也可固定其中的一維或幾維以獲得實際的低于四維的數據子集。 2.設置的作用 GrADS 中設置維數用以說明或指定隨后的分析或圖形操作時參加操作的原始數據集的維數范圍。該工作數據集可以是整個原始數據場,也可以是原始數據場的一部分。 3. 維數環(huán)境的定義(1)一種是地球坐標(world coordinate)以經緯度為度量單位。 形

53、式如下: set lon|lat|lev|time val1 (2)一種是格點坐標(gridcoordinate) 以網格點數為度量單位。 形式如下: set x | y | z | t val1 set lon -90 或set x 1set lat 40 或set y 22set lev 500 或set z 6set time 01jan1985 或set t 5 set x 1 144 或 set lon 0 360set y 1 73 或 set lat -90 90set z 1 3 或 set lev 1000 850set t 1 3 或 set time 01jan1985

54、03jan1985 注意: grads只能顯示兩維或一維不固定的圖! 當所有維數都固定時,得到的是一個單值數據點維數環(huán)境的設置一直保持到再次設定時都有效。要查看當前維數情況,可以在運行環(huán)境中輸入命令: ga- q dimsset lon 180 360 不固定 set lat 0 90 不固定 set lev 500 set t 2 d hgtset lon 115 set lat 15 set lev 850 set t 1 12 不固定 d u二維平面圖一維曲線圖4.2 圖形類型的設置 當維數環(huán)境確定后,缺省情況下,一維變量輸出的圖形為單線圖,二維變量為等值線圖,改變缺省圖形輸出類型的命令

55、為: set gxout graphics_type 1. 格點數據contour: 二維等值線圖(缺省設置) set gxout contourshaded: 二維填色圖(通常與contour并用) 先畫填色圖,再畫等值線圖;否則等值線會被覆蓋。 set gxout shaded d hgt set gxout contour d hgtset t 1set gxout shadedset clevs -1 1set ccols 10 0 4d (hgt(t=1)-ave(hgt,t=1,t=50) )/10set gxout contourd (hgt(t=1)-ave(hgt,t=1,t

56、=50)/10set lon 0 210set lat 0 70set lev 500set t 2set gxout contourd hgt/10grid: 二維場不繪圖,以網格形式在各網格點中央標出該點數值fgrid: 用指定顏色填充二維格點場,對二維場不繪制等值線圖,只是將特定值的格點用指定的顏色填充該網格。與命令set fgvals val col合用 用法:set gxout fgrid set fgvals val1 col1 set fgvals val2 col2set lon 70 130set lat 10 30set lev 1000set t 1set gxout g

57、ridd u set lon 70 130set lat 10 30set lev 1000set t 1set gxout fgrid set fgvals -1 4Set fgvals -3 5d u vector: 矢量箭頭形式繪二維風場(缺省設置) set gxout vector d u;v (u,v在同一個數據文件中可這樣)或 d u.1;v.2 (u,v在兩個數據文件中)stream: 流線形式繪制二維風場 set gxout stream d u;vbarb: 風向桿形式繪制二維風場 set gxout barb d u;vline: 對一維場繪制單線圖 set lon 120

58、set lat 20set lev 200set t 1 12set gxout lined ubar: 對一維場不繪單線圖,而繪制直方圖set lon 120set lat 20set lev 200set t 1 12set gxout barset bargap 40Set barbase 0d vlinefill: 兩單曲線之間填色 與命令set lfcols col1 col2合用。 用法:set gxout linefill set lfcols col1 col2 d line1;line2當line1line2時,用顏色2(col2)set gxout lineset csty

59、le 1set cmark 0set ccolor 2d v.4set gxout lineset cstyle 1set cmark 0set ccolor 1d v.5 set gxout linefillset lfcols 4 10d v.4; v.5errbar: 單線圖誤差分布 set gxout errbar d line1;line2reinitopen D:gradsdatau.ctlenable print D:gradsdata2.gmfset grid offset parea 1 10 1 8set grads offset xlopts 1 2 0.15set yl

60、opts 1 2 0.15set t 1 48set vrange -40 60set gxout lineset cmark 2d uset gxout errbarset ccolor 2 d u-12.8;u+12.8printcdisable printreinit;scatter 散點圖set gxout scatter d v.1;v.2 reinitopen d:lon.ctlopen d:lat.ctlenable print D:gradsdata1.gmfset x 1 ;sety 1;set z 1 ;set t 1 24 set gxout scatter d v.1;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論