Re: issues with Y axis in wavelet plot

From: Daniel Barandiaran <dbarandiaran_at_nyahnyahspammersnyahnyah>
Date: Wed Feb 26 2014 - 15:56:02 MST

Thanks a bunch Adam! It was indeed a combination of things that were
causing the problems, but I have them sorted out now with your helpful
advice. It's so funny how a typo can fly under the radar sometimes, I
swear I looked at those resources a hundred times...

On Wed, Feb 26, 2014 at 2:59 PM, Adam Phillips <asphilli@ucar.edu> wrote:

> Hi Daniel,
> I think there are two things going on here:
> 1) You have res@tmTLLabels = " , and I think you want res@tmYLLabels = "
>
> 2) trYMinF and trYMaxF need to be within the range of 1st dimension's
> coordinate variable of the array you pass in. In your case, you are passing
> in: spower({0:40},:), indicating that your range of values goes from 0->40.
> But you are setting trYMaxF = 64; outside the range of your data. I bet if
> you set trYMaxF = 35 all would be well.
>
> Note though, if your Y-axis coordinate variable doesn't start at 0, you
> will have to change the setting of trYMinF as well. You can check that by
> doing a printVarSummary(spower({0:40},:)).
>
> Hope that helps.. If not, please respond to ncl-talk..
> Adam
>
>
> On 02/26/2014 01:43 PM, Daniel Barandiaran wrote:
>
> Hi NCLers,
>
> I am trying to plot output from the wavelet function. I am following the
> examples given at http://www.ncl.ucar.edu/Applications/wavelet.shtml.
> There seems to be a problem with setting the tickmarks, and it gives me an
> error I don't understand, nor have I seen before. The relevant is
> attached, along with the error message:
>
> swewave = wavelet(swe(1,{1936:2011}),mother,dt,param,
>
> s0,dj,jswe,nswe,noise,isigtest,siglvl,nadof)
>
> spower = onedtond(swewave@power,(/jswe,nswe/))
> spower!0 = "period"
> spower&period = swewave@period
> spower!1 = "time"
> spower&time = years({1936:2001})
>
> ssig = spower / conform(spower,swewave@signif,0)
> copy_VarCoords(spower,ssig)
>
> wks =
> gsn_open_wks(gtype,"~/Desktop/plots/treerings/for_justin/plot_reconst")
>
> res = True
> res@gsnDraw = False
> res@gsnFrame = False
> res@cnFillOn = True
> res@cnFillMode = "RasterFill"
> res@cnRasterSmoothingOn = True
> res@cnLinesOn = False
> res@cnLineLabelsOn = False
> res@trYReverse = True
> ;res@trYLog = True
> res@trYMinF = 1
> res@trYMaxF = 64
> res@tmYLMode = "Explicit"
> res@tmYLValues = (/1,2,4,8,16,32,64/)
> res@tmTLLabels = (/"1","2","4","8","16","32","64"/)
> res@tmLabelAutoStride = True
> res@vpHeightF = 0.455
> res@vpWidthF = 0.885
> res@vpXF = 0.09
> res@vpYF = 0.63
>
> res2 = True
> res2@gsnDraw = False
> res2@gsnFrame = False
> res2@cnLevelSelectionMode = "ManualLevels"
> res2@cnMinLevelValF = 0.94
> res2@cnMaxLevelValF = 1.02
> res2@cnLevelSpacingF = 0.01
> res2@cnInfoLabelOn = False
> res2@cnLineLabelsOn = False
> res2@cnFillScaleF = 0.6
> res2@trYReverse = True
> ;res2@trYLog = True
> res2@trYMinF = 1
> res2@trYMaxF = 64
> res2@tmYLMode = "Explicit"
> res2@tmYLValues = (/1,2,4,8,16,32,64/)
> res2@tmTLLabels = (/"1","2","4","8","16","32","64"/)
> res2@tmLabelAutoStride = True
>
> res@gsnCenterString = "Wavelet Power"
> plot(1) = gsn_csm_contour(wks,spower({0:40},:),res)
> sigplot = gsn_csm_contour(wks,ssig({0:40},:),res2)
> sigplot = ShadeGtContour(sigplot,0.99,17)
> overlay(plot(1),sigplot)
> plot(1) = ShadeCOI(wks,plot(1),swewave,years({1936:2001}),False)
>
> draw(plot)
> frame(wks)
>
> *******************************************************
>
> and the error statements:
>
> warning:ContourPlotSetValues: current transformation requires trYMinF to
> be within data coordinate range: resetting
> warning:ContourPlotSetValues: current transformation requires trYMaxF to
> be within data coordinate range: resetting
> fatal:["MultiText.c":941]:[errno=12]
> fatal:TickMarkSetValues: Could not set MultiText item values for left tick
> mark labels, cannot continue
> fatal:TickMarkSetValues: A fatal error was detected while computing tick
> marks labels,cannot continue
> fatal:PlotManagerSetValues: Error setting TickMark values
> fatal:ContourPlotSetValues: error setting overlay object view
> warning:tmTLLabels is not a valid resource in /plot_reconst_contour at
> this time
> ncl(2506) malloc: *** error for object 0x7fff5fef1cf0: pointer being freed
> was not allocated
> *** set a breakpoint in malloc_error_break to debug
> Abort trap: 6
>
>
> I have tried various things to try to remedy this. If I do not set
> tmYLMode = "Explicit" then everything plots fine, but then I cannot control
> the tickmarks, which is what this is all about. If I set trYLog = True
> then it tells me
>
> warning:ContourPlotSetValues: Log axis not possible with irregular
> coordinate spacing; switching to linear index coordinates for Y Axis
>
>
> Any thoughts on how to fix this?
>
>
>
>
> --
> Danny Barandiaran
> Department of Plants, Soils, and Climate
> Utah State University
>
>
>
>
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
> --
> ______________________________________________________________
> Adam Phillips asphilli@ucar.edu
> NCAR/Climate and Global Dynamics Division (303) 497-1726
> P.O. Box 3000
> Boulder, CO 80307-3000 http://www.cgd.ucar.edu/staff/asphilli
>
>

-- 
Danny Barandiaran
Department of Plants, Soils, and Climate
Utah State University

_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Wed Feb 26 15:56:18 2014

This archive was generated by hypermail 2.1.8 : Mon Mar 03 2014 - 14:26:18 MST