[ncl-talk] about irregular time with gsn_csm_lat_time
dyjbean at gmail.com
dyjbean at gmail.com
Tue Aug 23 20:22:45 MDT 2016
thanks, according to the link and your code, i made the following plot
resxt= True
resxt at ttmFormat = "%c"
;resxt at ttmMajorStride = 3
resxt at ttmNumTicks = 10
time_axis_labels(newtime, res, resxt)
but i cannot find the attribute about font size with prefix "ttm", if i set ttmNumTicks more than 10 or others , the x-axis appearance will be overlaid each other.
thanks
dyjbean at gmail.com
From: Mary Haley
Date: 2016-08-23 23:39
To: dyjbean at gmail.com
CC: ncl-talk
Subject: Re: [ncl-talk] about irregular time with gsn_csm_lat_time
Hi,
The problem is that you are trying to use rather erratically spaced values on the X axis.
If you think about the "time" values as just regular numbers, this means when you go from time=201111, 201112, 201201, 201202, you are going from an increment of 1, to an increment of 89, and then back to an increment of 1. This is what causes NCL to give you the "spline" error.
To fix this, you need to convert your YYYYMM time values into numeric values with more reasonable spacing. This can be done using cd_inv_calendar:
http://www.ncl.ucar.edu/Document/Functions/Built-in/cd_inv_calendar.shtml
You can then use the very nice user contributed "time_axis_labels" routine:
http://www.ncl.ucar.edu/Document/Functions/User_contributed/time_axis_labels.shtml
to easily format the X axis as desired,
See the attached "fixtime.ncl" script which uses dummy data, based on the lat/time values you provided in your script.
--Mary
On Tue, Aug 23, 2016 at 3:44 AM, dyjbean at gmail.com <dyjbean at gmail.com> wrote:
hi,
when i use gsn_csm_lat_time, i got the following warning info:
warning:_NhlCreateSplineCoordApprox: Attempt to create spline approximation for X axis failed: consider adjusting trXTensionF value
warning:IrTransInitialize: error creating spline approximation for trXCoordPoints; defaulting to linear
and the x-axis didn't appear.
the below is my script:
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"
begin
minlat = 9
maxlat = 56
minlon = 70
maxlon = 150
files10=systemfunc("cat nccolumn.log")
print(files10)
setfileoption("nc","Format","LargeFile")
mons01ff=addfiles(files10,"r")
ListSetType(mons01ff,"join")
slat10=mons01ff[:]->lat
slon10=mons01ff[:]->lon
colm10=mons01ff[:]->column_ozone
colm10dms=dimsizes(colm10)
colm10 at _FillValue=999.0
colm10=colm10*0.1
pcolm10=colm10(:,{minlon:maxlon},{minlat:maxlat})
tlat10=slat10(0,{minlat:maxlat})
tlon10=slon10(0,{minlon:maxlon})
tlat10 at units="degrees-north"
tlon10 at units="degrees-east"
acolm10=dim_avg_n(pcolm10,1)
;print("----"+dimsizes(acolm10))
times10=yyyymm_time(2010,2012,"integer")
;times10=yyyymm_to_yyyyfrac(itimes10, 0.0)
times10!0 = "time"
times10 at units="Months since January 2010"
times10 at long_name="Months"
acolm10!0="time"
acolm10!1="lat"
acolm10 at units=colm10 at units
acolm10 at long_name=colm10 at long_name
acolm10&time=times10
acolm10&lat=tlat10
; print(times10)
printVarSummary(acolm10)
;printMinMax(acolm10&lat, 0)
; printMinMax(tlon10, 0)
print(acolm10&time)
delfile=systemfunc("rm "+"zonal_column"+".png")
wks=gsn_open_wks("png","zonal_column")
gsn_define_colormap(wks,"GMT_no_green")
res = True
res at cnFillOn = True
res at cnLinesOn = False
res at gsnAddCyclic = False
;res at pmTickMarkDisplayMode = "Always"
res at tmYLMode = "Explicit"
res at tmYLValues =(/10,15,20,25,30,35,40,45,50,55/)
res at tmYLLabels =(/"10~S~o~N~N","15~S~o~N~N","20~S~o~N~N","25~S~o~N~N",\
"30~S~o~N~N","35~S~o~N~N","40~S~o~N~N", \
"45~S~o~N~N","50~S~o~N~N","55~S~o~N~N"/)
;res at tmXBMinorOn = False
res at tmXBMode = "Explicit"
;res at tmXBFormat = "f"
;res at tmXBValues =(/201001,201002,201003,201004,201005,201006,\
; 201007,201008,201009,201010,201011,201012,\
; 201101,201102,201103,201104,201105,201106,\
; 201107,201108,201109,201110,201111,201112,\
; 201201,201202,201203,201204,201205,201206,\
; 201207,201208,201209,201210,201211,201212/)
res at tmXBValues =(/201001,201003,201006,201009,201012,\
201101,201103,201006,201109,201112,\
201201,201203,201206,201209,201212/)
;res at tmXBLabels =(/"JAN","FEB","MAR","APR","MAY","JUN",\
; "JUL","AUG","SEP","OCT","NOV","DEC",\
; "JAN","FEB","MAR","APR","MAY","JUN",\
; "JUL","AUG","SEP","OCT","NOV","DEC",\
; "JAN","FEB","MAR","APR","MAY","JUN",\
; "JUL","AUG","SEP","OCT","NOV","DEC"/)
res at tmXBLabels =(/"JAN~C~2010","MAR~C~2010","JUN~C~2010","SEP~C~2010","DEC~C~2010",\
"JAN~C~2011","MAR~C~2011","JUN~C~2011","SEP~C~2011","DEC~C~2011",\
"JAN~C~2012","MAR~C~2012","JUN~C~2012","SEP~C~2012","DEC~C~2012"/)
res at tmXBLabelFontHeightF = 0.015
;res at tmYLMinorOn = False
res at tiMainString = ""
plot=gsn_csm_lat_time(wks,acolm10(lat|:,time|:),res)
end
the red letters is my origin destination, the blue letters is my test, but they didn't give the right plot.
the following is my running information:
Variable: acolm10
Type: float
Total Size: 6768 bytes
1692 values
Number of Dimensions: 2
Dimensions and sizes: [time | 36] x [lat | 47]
Coordinates:
time: [201001..201212]
lat: [9.5..55.5]
Number Of Attributes: 3
long_name : ozone column
units : DU
_FillValue : 999
Variable: time (coordinate)
Type: integer
Total Size: 144 bytes
36 values
Number of Dimensions: 1
Dimensions and sizes: [time | 36]
Coordinates:
Number Of Attributes: 2
units : Months since January 2010
long_name : Months
(0) 201001
(1) 201002
(2) 201003
(3) 201004
(4) 201005
(5) 201006
(6) 201007
(7) 201008
(8) 201009
(9) 201010
(10) 201011
(11) 201012
(12) 201101
(13) 201102
(14) 201103
(15) 201104
(16) 201105
(17) 201106
(18) 201107
(19) 201108
(20) 201109
(21) 201110
(22) 201111
(23) 201112
(24) 201201
(25) 201202
(26) 201203
(27) 201204
(28) 201205
(29) 201206
(30) 201207
(31) 201208
(32) 201209
(33) 201210
(34) 201211
(35) 201212
warning:_NhlCreateSplineCoordApprox: Attempt to create spline approximation for X axis failed: consider adjusting trXTensionF value
warning:IrTransInitialize: error creating spline approximation for trXCoordPoints; defaulting to linear
can you give me some advice for tuning this irregular x-axis time labels?
thanks
dyjbean at gmail.com
_______________________________________________
ncl-talk mailing list
ncl-talk at ucar.edu
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160824/5e2e5fa8/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 36189 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160824/5e2e5fa8/attachment.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 111810 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160824/5e2e5fa8/attachment-0001.png
More information about the ncl-talk
mailing list