[ncl-talk] hovmoller diagrams for vectors and swap x/y axes
Adam Phillips
asphilli at ucar.edu
Fri Jul 24 10:05:38 MDT 2015
Hi Qi,
Ah, that's what you wanted. Yes, you can do a latitude-time plot:
https://www.ncl.ucar.edu/Applications/lat_time.shtml
Adam
On Thu, Jul 23, 2015 at 9:29 PM, LI Qi <liqi123sh at qq.com> wrote:
> Hi Dave,
> It works like a charm! Thank you very much!
>
> Hi Adam,
> Sorry for my misleading expression...what I really want is to swap the X/Y
> axes, i.e., to make the Time-latitude plot to a Latitude-time plot.
>
> Then I reorder the variable's dimensions, like:
>
> ; variable's original order (time, lat, lon)
> qu = in->quz(:,:,0)
> ; reorder (lat, time)
> qu_new = qu(lat | :, time | :)
>
> But the figure's coordinate doesn't show latitudes and timeline (shown
> below). What do I do? Or is there any other way to swap the axis?
>
> Thanks again!
> Qi
>
>
> ------------------ Original ------------------
> *From: * "Adam Phillips";<asphilli at ucar.edu>;
> *Date: * Fri, Jul 24, 2015 02:28 AM
> *To: * "David Brown"<dbrown at ucar.edu>;
> *Cc: * "LI Qi"<liqi123sh at qq.com>; "ncl-talk"<ncl-talk at ucar.edu>;
> *Subject: * Re: [ncl-talk] hovmoller diagrams for vectors
>
> Hi Qi,
> Adding to Dave's email: If you want to reverse your X/Y axes you can set
> trYReverse / trXReverse:
> www.ncl.ucar.edu/Document/Graphics/Resources/tr.shtml#trXReverse
> www.ncl.ucar.edu/Document/Graphics/Resources/tr.shtml#trYReverse
> Adam
>
>
> On Thu, Jul 23, 2015 at 11:58 AM, David Brown <dbrown at ucar.edu> wrote:
>
>> Hi Qi,
>> I am guessing you need to set vcMapDirection to False. This needs to be
>> set when you plot vectors with axes with coordinates that are not
>> geographic.
>> -dave
>>
>>
>> On Thu, Jul 23, 2015 at 4:01 AM, LI Qi <liqi123sh at qq.com> wrote:
>>
>>> Hi Adam,
>>>
>>> Thank you very much! The example is very helpful! I use the function
>>> "overlay" to superimpose vectors over contours.
>>>
>>> However, the vectors seem different with the one I plot using GrADS (see
>>> below), and I don't know why. Could you help me look at my script? One more
>>> question is, how to reverse the X-Y coordinates?
>>> Attached is the data if it is needed.
>>>
>>> Much appreciated and best regards,
>>> Qi
>>>
>>> ncl plot:
>>>
>>> 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/contrib/time_axis_labels.ncl"
>>> ;************************************************
>>> begin
>>> ;************************************************
>>> ; variable and file handling
>>> ;************************************************
>>> in = addfile("erai-qvint-zonmean.nc","r")
>>> qu = in->quz(:,:,0)
>>> qv = in->qvz(:,:,0)
>>> qdiv = in->qflxdiv(:,:,0)
>>> time = in->time
>>> lat = in->lat
>>>
>>> ;************************************************
>>> ; plotting
>>> ;************************************************
>>> wks = gsn_open_wks("eps","eri-qhov") ; Opens a eps file
>>> ;gsn_define_colormap(wks,"WhiteBlueGreenYellowRed") ;
>>> choose colormap
>>>
>>> res = True
>>> res at gsnDraw = False
>>> res at gsnFrame = False
>>> ;
>>> ; Set up some contour resources.
>>> ;
>>> ; Turn on contour fill, and turn other things off.
>>> ;
>>> res at cnFillOn = True
>>> res at cnLinesOn = False
>>> res at cnInfoLabelOn = False
>>>
>>> ;
>>> ; Define contour levels and their colors.
>>> ;
>>> ;cnres at cnLevelSelectionMode = "ManualLevels"
>>> ;cnres at cnMinLevelValF = 980.0
>>> ;cnres at cnMaxLevelValF = 1040.0
>>> ;cnres at cnLevelSpacingF = 5.0
>>> ;cnres at cnFillPalette = "StepSeq25" ; assign color map to
>>> contours
>>>
>>>
>>> res at trYReverse = True ; time from top to bottom, small to
>>> big
>>> ; Set special resources for the time axis
>>> resTick = True
>>> resTick at ttmFormat = "%d %c" ; form like "1 Jun", %d means day,
>>> %c means calendar
>>> resTick at ttmAxis = "YL" ; Y axis, Left
>>>
>>> ; Set resources necessary to customize Y axis labels
>>> time_axis_labels( time, res, resTick )
>>>
>>> vecres = True ; vector only resources
>>> vecres at gsnDraw = False
>>> vecres at gsnFrame = False
>>> vecres at vcRefMagnitudeF = 600000 ; define vector ref mag
>>> vecres at vcRefAnnoOrthogonalPosF = -.535 ; move ref vector into plot
>>>
>>> cnid = gsn_csm_contour(wks,qdiv,res)
>>> vcid = gsn_csm_vector(wks,qu,qv,vecres)
>>> overlay(cnid,vcid)
>>> maximize_output(wks,True)
>>> end
>>>
>>>
>>> ------------------ Original ------------------
>>> *From: * "Adam Phillips";<asphilli at ucar.edu>;
>>> *Date: * Tue, Jul 21, 2015 04:02 AM
>>> *To: * "LI Qi"<liqi123sh at qq.com>;
>>> *Cc: * "ncl-talk"<ncl-talk at ucar.edu>;
>>> *Subject: * Re: [ncl-talk] hovmoller diagrams for vectors
>>>
>>> Hi Qi,
>>> I believe you will want to use the gsn_csm_vector_scalar plotting
>>> function. For an example showing how this function is used see example #6
>>> here:
>>> http://www.ncl.ucar.edu/Applications/overlay.shtml#ex6
>>> (see the overlay_6_new.ncl script)
>>>
>>> This example does not show a latitude/time plot but
>>> gsn_csm_vector_scalar should still work for your needs.
>>>
>>> Hope that helps. If not or if you have further questions please respond
>>> to ncl-talk.
>>> Adam
>>>
>>>
>>> On Sat, Jul 18, 2015 at 7:29 PM, LI Qi <liqi123sh at qq.com> wrote:
>>>
>>>> Dear NCL community,
>>>>
>>>> I would like to create latitude vs. time plot for moisture flux in
>>>> vectors.
>>>> But the function gsn_csm_lat_time seems to be used for scalar fieids.
>>>>
>>>> The data I have contains (qu,qv) over a limited area.
>>>> Below is a figure I plotted using GrADS for reference. How could I plot
>>>> it using NCL?
>>>>
>>>> Any suggestion would be much appreciated!
>>>>
>>>> Best,
>>>> Qi
>>>>
>>>>
>>>> _______________________________________________
>>>> ncl-talk mailing list
>>>> ncl-talk at ucar.edu
>>>> List instructions, subscriber options, unsubscribe:
>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>
>>>>
>>>
>>>
>>> --
>>> Adam Phillips
>>> Associate Scientist, Climate and Global Dynamics Laboratory, NCAR
>>> www.cgd.ucar.edu/staff/asphilli/ 303-497-1726
>>>
>>> <http://www.cgd.ucar.edu/staff/asphilli>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> ncl-talk at ucar.edu
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>
>
>
> --
> Adam Phillips
> Associate Scientist, Climate and Global Dynamics Laboratory, NCAR
> www.cgd.ucar.edu/staff/asphilli/ 303-497-1726
>
> <http://www.cgd.ucar.edu/staff/asphilli>
>
--
Adam Phillips
Associate Scientist, Climate and Global Dynamics Laboratory, NCAR
www.cgd.ucar.edu/staff/asphilli/ 303-497-1726
<http://www.cgd.ucar.edu/staff/asphilli>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150724/4c0a1969/attachment-0001.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 881EDA52 at 875A3F53.01B1B155
Type: application/octet-stream
Size: 270167 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150724/4c0a1969/attachment-0003.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 26F70827 at 875A3F53.01B1B155
Type: application/octet-stream
Size: 109813 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150724/4c0a1969/attachment-0004.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 2B07F50A at 875A3F53.01B1B155
Type: application/octet-stream
Size: 110658 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150724/4c0a1969/attachment-0005.obj
More information about the ncl-talk
mailing list