Example 1 - XY plots

http://www.ncl.ucar.edu/Document/Manuals/Getting_Started/Examples/gsun01n.shtml

 

 
Frame 1 Frame 2 Frame 3 Frame 4 Frame 5
Example 1 - XY plots Example 1 - XY plots Example 1 - XY plots Example 1 - XY plots Example 1 - XY plots

(Click on any frame to see it enlarged.)


NCL code for example 1

  1. load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"  ; 加载包含gsn_的函数的ncl文件

  3. begin                                                     ;程序开始

  4.   x = new(9,float)  ; 定义一个包含有9个元素的一维数组(c = new((/5,6,7/),integer) a= (/True,False,True/))

  5.   y = new(9,float)

  6. 

  7.   x = (/10.,20.,30.,40.,50.,60.,70.,80.,90./)

  8.   y = (/0.,0.71,1.,0.7,0.002,-0.71,-1.,-0.71,-0.003/)

  9. 

 10.   wks = gsn_open_wks("x11","gsun01n")  ; 打开一个X11的工作站

 11. 

 12.   plot = gsn_xy(wks,x,y,False)         ; 绘制一个xy的曲线图

 13. 

 14. ;----------- Begin second plot -----------------------------------------

 15. 

 16.    y2 = (/(/0., 0.7, 1., 0.7, 0., -0.7, -1., -0.7, 0./),\

 17.          (/2., 2.7, 3., 2.7, 2.,  1.3,  1.,  1.3, 2./),\

 18.          (/4., 4.7, 5., 4.7, 4.,  3.3,  3.,  3.3, 4./)/)    ;这是一个27个元素的一维数组

 19. 

 20.   x@long_name  = "X"             ; 定义x的一个属性

 21.   y2@long_name = "Y"             ; 定义y2的一个属性

 22. 

 23.   plot = gsn_xy(wks,x,y2,False)  ; 绘制一个包含3个曲线的xy plot

 24. 

 25. ;----------- Begin third plot -----------------------------------------

 26. 

 27.   resources                    = True          ; 示意有资源要设置

 29. 

 30.   resources@xyLineColors        = (/2,3,4/)    ; 设定线条颜色

 31.   resources@xyLineThicknesses   = (/1.,2.,5./) ; 设定线条粗细

 32.                                                ; (默认值是1.0).

 33. 

 34.   plot = gsn_xy(wks,x,y2,resources)            ; 绘制一个 XY plot.

 35. 

 36. ;---------- Begin fourth plot ------------------------------------------

 37.  

 38.   resources@tiMainString    = "X-Y plot"  ; 标题

 39.   resources@tiXAxisString   = "X Axis"    ; x轴标签

 40.   resources@tiYAxisString   = "Y Axis"    ; y轴标签

 41.   resources@tiMainFont      = "Helvetica" ; 标题字体

 42.   resources@tiXAxisFont     = "Helvetica" ; x轴标签字体

 43.   resources@tiYAxisFont     = "Helvetica" ; y轴标签字体

 44. 

 45.   resources@xyMarkLineModes = (/"Lines","Markers","MarkLines"/)

 46.   resources@xyMarkers       = (/0,1,3/)   ; (none, dot, asterisk)

 47.   resources@xyMarkerColor   = 3           ; 标记颜色

 48.   resources@xyMarkerSizeF   = 0.03        ; 标记大小 

 49.                                           ; 默认是0.01

 50. 

 51.   plot = gsn_xy(wks,x,y2,resources)       ; 绘制一个 XY plot.

 52. 

 53. ;---------- Begin fifth plot ------------------------------------------

 54.  

 55.   filename = "$NCARG_ROOT/lib/ncarg/data/asc/xy.asc"

 56. 

 57.   data = asciiread(filename,(/129,4/),"float")  ;以浮点读取参数文件入data,data数组规格:(/129,4/)

 58. 

 59.   uv      = new((/2,129/),float)

 60.   uv(0,:) = data(:,1)

 61.   uv(1,:) = data(:,2)

 62. 

 63.   lon     = data(:,0)

 64.   lon     = (lon-1) * 360./128.

 65. 

 66.   delete(resources) ; 删除之前设置的资源

 67. 

 68.   resources                        = True

 69. 

 70.   resources@tiMainString           = "U/V components of wind"

 71.   resources@tiXAxisString          = "longitude"

 72.   resources@tiYAxisString          = "m/s"

 73.   resources@tiXAxisFontHeightF     = 0.02        ; 改变字体大小

 74.   resources@tiYAxisFontHeightF     = 0.02

 75. 

 76.   resources@xyLineColors           = (/3,4/)     ; 设置线条颜色

 77.   resources@xyLineThicknessF       = 2.0         ; 线条粗细设置为原来2倍

 78. 

 79.   resources@xyLabelMode            = "Custom"    ; 设置曲线标签

 80.   resources@xyExplicitLabels       = (/"U","V"/) ; 曲线标签

 81.   resources@xyLineLabelFontHeightF = 0.02        ; 大小和颜色

 82.   resources@xyLineLabelFontColor   = 2           ; 线条标签

 83. 

 84.   plot = gsn_xy(wks,lon,uv,resources) ; 绘制2个曲线的xy plot

 85. 

 86.   delete(plot)       ; 清空绘制面板

 87.   delete(resources)  ; 删除资源

 88. end

你可能感兴趣的:(example)