Irregular coordinate array: Plotting CALIPSO data, X-Axis latitude and longitude values

From: James Madden <jmmadden_at_nyahnyahspammersnyahnyah>
Date: Wed Aug 28 2013 - 18:33:03 MDT

Hello,

I am experiencing trouble plotting the x-axis latitude and longitude
coordinates.

It seems that the x-axis latitude and longitude values are crunched to the
bottom left of the plot. Additionally, a message is accompanied:
"warning:ScalarFieldSetValues: irregular coordinate array sfXArray
non-monotonic: defaulting sfXArray."

I have looked for help in this forum, but the help doesn't seem to be
applicable to my situation. I am a little confused - what am I missing? I
have altered the TickMark resources several times, but I don't seem to be
making progress.

I have attached the code below, and a picture of the current plot is
attached.

Thanks in advance.

Code:

;**************************************************
; This program intends to plot CALIPSO data.
; Author: Cory Wolff from UCAR (thank him in thesis), edits by J. Madden
;**************************************************
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/contrib/ut_string.ncl"
load "color_map.ncl"

;**************************************************

begin

; --- Read Calipso------------;
   f =
addfile("/import/archive/u1/uaf/jmmadden/WILDFIRE2009/CALIPSOdata/HDF/CAL_LID_L1-ValStage1-V3-01.2009-06-20T21-33-08ZD.hdf","r")

   back1 = f->Total_Attenuated_Backscatter_532
   dims = getvardims(back1)

   ; Reverse the vertical array
   back1 = back1(:,::-1)

   ; Reorder using string dimension names
   back = back1($dims(1)$|:,$dims(0)$|:)
   back@_FillValue = -9999
   back@units = "km~S~-1~NN~ sr~S~-1~NN~"

   ; Get the lat and lon arrays for the x-axis
   lat = f->Latitude
   lon = f->Longitude
   xlabel = sprintf("%.2f",lat)+"~C~"+sprintf("%.2f",lon)

   ; Work with the time fields to get a valid time string
   time = f->Profile_Time
   time@units = "seconds since 1993-01-01 00:00"
   tstring = ut_string(time(:,0), "%Y-%N-%D %H:%M:%S")
   tstring2 = ut_string(time(:,0), "%Y-%N-%D_%H-%M-%S")

   ; Set stride intervals for x-axis
   stride = dimsizes(tstring)/15

   ; Get the altitude values.
   hgt = asciiread("lidar_altitudes.txt", -1, "float")
   hgt = hgt(::-1) ; Reverse this array too
   hgt!0 = "hgt"

   hgt@long_name = "Altitude, km"
   hgt@units = "km"

   ; Assign new dimensions and attributes
   back!0 = "hgt"
   back&hgt = hgt
   back!1 = "lat"
   back&lat = lat(:,0)

   ; Get the surface elevation
   topo = f->Surface_Elevation(:,0)
   topo!0 = "lat"
   topo&lat = lat(:,0)

;*************************
; create plot
;*************************

 wks = gsn_open_wks("x11", "backscatter")

   cmap = new((/36,3/), float)
   gen_backscatter_cmap(cmap)
   setvalues wks
     "wkColorMap" : cmap
   end setvalues

   setvalues NhlGetWorkspaceObjectId()
        "wsMaximumSize": 300000000
   end setvalues

   res = True
   res@cnFillOn = True ; color plot desired
   res@cnLinesOn = False
   res@cnRasterModeOn = True

   res@gsnSpreadColors = True ; use all colors
   res@gsnAddCyclic = False
   res@gsnMaximize = True
   res@gsnLeftString = "UTC: "+tstring(0)+" to
"+tstring(dimsizes(tstring)-1)

   res@tiMainString = "Total Attenuated Backscatter"
   res@tiMainFontHeightF = 0.025
   res@tiYAxisFontHeightF = 0.02

   res@cnLevelSelectionMode = "ExplicitLevels"
   res@cnLevels =
(/0.0001,0.0002,0.0003,0.0004,0.0005,0.0006,0.0007,0.0008,0.0009,0.001,0.0015,0.002,0.0025,0.003,0.0035,0.004,0.0045,0.005,0.0055,0.006,0.0065,0.007,0.0075,0.008,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1/)

   res@tmXTOn = False
   res@tmXBMode = "Explicit"
   res@tmXBValues = xlabel(::stride,0)
   res@tmXBLabels = xlabel(::stride,0)
   res@tmXBLabelFontHeightF = 0.015

   res@lbLabelFontHeightF = 0.015
   res@lbLabelAngleF = -90.0

   res@vpWidthF = 1.0

   res@gsnDraw = True
   res@gsnFrame = False

   plot = gsn_csm_contour(wks,back,res)
   frame(wks)
end

-- 
*Mike Madden
*
*Graduate Research Assistant *
*Department of Atmospheric Sciences *
*University of Alaska Fairbanks*
*IARC 338N
*
*Office:  (907) 474-7618
*
---------------------------------------------------------------------
*"Buy the ticket, take the ride."  Hunter S. Thompson
*


_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk

CALIPSO_Plot_for_NCL_forum.GIF
Received on Wed Aug 28 18:33:21 2013

This archive was generated by hypermail 2.1.8 : Fri Aug 30 2013 - 14:04:57 MDT