NCL的示例1:常见符号的用法

NCL的示例1这个例子中演示了三个符号的使用:

!设置(维数)坐标名称

@设置资源属性

&:设置(维数)坐标值

在字符串引用中,还会遇到美元$符号:

dimnames = (/"frtime","lat","lon"/)
attnames = (/"_FillValue", "long_name"/)
att0 = temperature@$attnames(0)$     ; access to attribute
; Example of referencing a coordinate variable 
; without knowing the dimension name
if(iscoord(dimnames(0)) 
	coord0 = temperature&$temperature!0$
end if
下面的脚本会输出以下图形:


; =================================================;
; LearnNCL1.ncl
; =================================================;
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
; =================================================;
begin
;创建一个 3X4 的数组t,3行2列. 下面的\表示换行
t=(/\
	(/1.,2.,3.,4./),\
	(/5.,6.,7.,8./),\
	(/9.,10.,11.,12./)\
	/)
;打印信息
print(t)

;设置维数坐标名称使用 ! 符号
t!0="lon"
t!1="lat"
;打印信息
print(t!0)
print(t!1)

;设置维数坐标值使用 & 符号
t&lon=(/-180,0,180/)
t&lat=(/-90,-45,45,90/)
;打印信息
print(t&lon)
print(t&lat)

;设置属性使用 @ 符号
t@long_name="temperature"
t@units="K"
;打印维数坐标值
print(t@long_name)
print(t@units)

  xwks   = gsn_open_wks( "x11","ncltest") ; Open an X11 workstation.
;------------------------------------------------------------------
  resources                 = True      ; set some resources.
  resources@cnFillOn          = True    ; Turn on contour line fill.
  
  resources@tiMainString    = t@long_name
  resources@tiXAxisString    = t!0
  resources@tiYAxisString    = t!1
  resources@sfXArray         = t&lon   ;用这个做横坐标刻度值
  resources@sfYArray         = t&lat   ;用这个做纵坐标刻度值
  
  contourmap = gsn_contour_map(xwks,t(lat|:,lon|:),resources)
;------------------------------------------------------------------
  delete(resources)
  resources                 = True      ; set some resources.
  resources@cnFillOn          = True    ; Turn on contour line fill.
  
  resources@tiMainString    = t@long_name
  resources@tiXAxisString    = t!0
  resources@tiYAxisString    = t!1
  resources@sfXArray         = t&lon   ;用这个做横坐标刻度值
  resources@sfYArray         = t&lat   ;用这个做纵坐标刻度值

  contour = gsn_contour(xwks,t(lat|:,lon|:),resources) 

;------------------------------------------------------------------
end

打印输出的信息如下:

 Copyright (C) 1995-2013 - All Rights Reserved
 University Corporation for Atmospheric Research
 NCAR Command Language Version 6.1.2
 The use of this software is governed by a License Agreement.
 See http://www.ncl.ucar.edu/ for more details.


Variable: t
Type: float
Total Size: 48 bytes
            12 values
Number of Dimensions: 2
Dimensions and sizes:	[3] x [4]
Coordinates: 
(0,0)	 1
(0,1)	 2
(0,2)	 3
(0,3)	 4
(1,0)	 5
(1,1)	 6
(1,2)	 7
(1,3)	 8
(2,0)	 9
(2,1)	10
(2,2)	11
(2,3)	12
(0)	lon
(0)	lat


Variable: lon (coordinate)
Type: integer
Total Size: 12 bytes
            3 values
Number of Dimensions: 1
Dimensions and sizes:	[lon | 3]
Coordinates: 
(0)	-180
(1)	0
(2)	180


Variable: lat (coordinate)
Type: integer
Total Size: 16 bytes
            4 values
Number of Dimensions: 1
Dimensions and sizes:	[lat | 4]
Coordinates: 
(0)	-90
(1)	-45
(2)	45
(3)	90
(0)	temperature
(0)	K


  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值