[ncl-talk] Overlay a box and a marker over WRF field
Rabah Hachelaf
hachelaf at sca.uqam.ca
Wed May 27 11:26:12 MDT 2015
But without the dot marker in the center of the domain !!!
2015-05-27 13:22 GMT-04:00 Rabah Hachelaf <hachelaf at sca.uqam.ca>:
> Thanks Rick and others,
>
> It works now.
>
>
> Rabah
>
> 2015-05-27 13:06 GMT-04:00 Rick Brownrigg <brownrig at ucar.edu>:
>
> Hi,
>>
>> If you set the resources as recommended by Karin (which you have not done
>> in your attached script), and you use gsn_add_polymarker() rather than
>> gsn_polymarker(), you'll get what you are after. Note that
>> gsn_add_polymarker, like gsn_add_polyline, is a function, not a procedure,
>> so you must assign the return value to some (arbitrary) variable.
>>
>> Rick
>>
>>
>> On Wed, May 27, 2015 at 9:27 AM, Rabah Hachelaf <hachelaf at sca.uqam.ca>
>> wrote:
>>
>>> @ Katin,
>>>
>>> Thanks for your replay, but your suggestion does'nt change any things.
>>> @ Alex,
>>>
>>> Attached you find my geo_em, namelist.wps and the ncl script that i use.
>>>
>>>
>>> Thanks.
>>>
>>> Rabah
>>>
>>> 2015-05-27 6:47 GMT-04:00 Karin Meier-Fleischer <meier-fleischer at dkrz.de
>>> >:
>>>
>>>> Hi,
>>>>
>>>> take a look at the web page
>>>> https://www.ncl.ucar.edu/Document/Functions/WRF_arw/wrf_map_overlays.shtml
>>>>
>>>> —>
>>>>
>>>> If you want to use gsn_add_poly*xxxx* routines (like
>>>> *gsn_add_polymarker*
>>>> <https://www.ncl.ucar.edu/Document/Graphics/Interfaces/gsn_add_polymarker.shtml>)
>>>> to add primtives to a WRF plot, then you need to set:
>>>>
>>>> plt_res at PanelPlot = True
>>>> plt_res at FramePlot = False
>>>>
>>>> *before* you call *wrf_map_overlays*. Then, call the appropriate
>>>> gsn_add_poly*xxxx* routine to attach the desired primitives, and
>>>> finally call *draw*
>>>> <https://www.ncl.ucar.edu/Document/Functions/Built-in/draw.shtml>(plot)
>>>> and *frame*
>>>> <https://www.ncl.ucar.edu/Document/Functions/Built-in/frame.shtml>(wks)
>>>> to draw the plot with the attached primitives and advance the frame.
>>>>
>>>> Bye,
>>>> Karin
>>>>
>>>>
>>>>
>>>> Am 27.05.2015 um 05:51 schrieb Alex Schaefer <
>>>> alexander.schaefer at mines.sdsmt.edu>:
>>>>
>>>> Rabah,
>>>>
>>>> So if you don’t put them both both res and pltres you still end up with
>>>> 2 plots?
>>>>
>>>> It might also be worth trying to use the gsn_add_polymarker as opposed
>>>> to using the gsn-polymarker. gsn_polymarker might have the frame internally
>>>> built. The gsn_add_polymarker does return an identifier so you would do it
>>>> similar to your polyline call:
>>>>
>>>> pm_id = gsn_add_polymarker(wks,plot,npres at ref_lon,npres at ref_lat,mpres)
>>>>
>>>> If this doesn’t work can you attach your geo_em file and script and I
>>>> will see if I can see what is going on.
>>>>
>>>> -Alex
>>>>
>>>>
>>>>
>>>> On May 26, 2015, at 7:06 PM, Rabah Hachelaf <hachelaf at sca.uqam.ca>
>>>> wrote:
>>>>
>>>> Hi Alex ,
>>>>
>>>> When i add
>>>> opts at gsnDraw = False
>>>> opts at gsnFrame = False
>>>> or
>>>> res at gsnDraw = False
>>>> res at gsnFrame = False
>>>>
>>>> and also
>>>>
>>>> pltres at gsnDraw = False
>>>> pltres at gsnFrame = False
>>>>
>>>> I get only grid with the box and the marker like attached.
>>>>
>>>>
>>>>
>>>> 2015-05-26 20:47 GMT-04:00 Alex Schaefer <
>>>> alexander.schaefer at mines.sdsmt.edu>:
>>>>
>>>>> Rabah,
>>>>>
>>>>> Where in your script did you add the resources suggested by Jared?
>>>>>
>>>>> Since you have a bunch of different resource objects you will need to
>>>>> set it in each going into plots controlling plot resources. For you this
>>>>> should include res or opts and likely pltres.
>>>>>
>>>>> -Alex
>>>>>
>>>>>
>>>>> On May 26, 2015, at 6:36 PM, Rabah Hachelaf <hachelaf at sca.uqam.ca>
>>>>> wrote:
>>>>>
>>>>> Hi Jared,
>>>>>
>>>>> Thanks for your reponse,
>>>>>
>>>>> But add
>>>>>
>>>>>
>>>>> res at gsnDraw = False
>>>>> res at gsnFrame = False
>>>>>
>>>>> doesn't change any things.
>>>>>
>>>>> Rabah
>>>>>
>>>>>
>>>>> 2015-05-26 18:34 GMT-04:00 Jared Lee <jaredlee at ucar.edu>:
>>>>>
>>>>>> Hi Rabah,
>>>>>>
>>>>>> I believe what you're missing is these two lines where you set other
>>>>>> 'res' resources:
>>>>>>
>>>>>> res at gsnDraw = False
>>>>>> res at gsnFrame = False
>>>>>>
>>>>>> By default they're both set to True, which would give you two
>>>>>> separate images. If you set both to false you should get a single plot with
>>>>>> your polymarker overlaid.
>>>>>>
>>>>>> Hope that helps.
>>>>>>
>>>>>> Jared
>>>>>>
>>>>>> On Tue, May 26, 2015 at 4:21 PM, Rabah Hachelaf <hachelaf at sca.uqam.ca
>>>>>> > wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Hello NCL users,
>>>>>>>
>>>>>>> I am using the script below to plot a box and a marker dot over
>>>>>>> topography field from WRF outputs,
>>>>>>>
>>>>>>> My problem is i can not get one figure, i get two separate figures
>>>>>>> like attached.
>>>>>>>
>>>>>>> Any suggestion to solve this.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ; Example script - plot terrain (using some basic WRF scripts)
>>>>>>> ; Overwrite basic map background settings
>>>>>>> ; November 2008
>>>>>>>
>>>>>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
>>>>>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
>>>>>>>
>>>>>>> begin
>>>>>>>
>>>>>>> a = addfile("../geo_em.d02.nc","r") ; Open a file
>>>>>>> filename = "../namelist.wps"
>>>>>>>
>>>>>>> npres= True
>>>>>>> npres at ref_lat = stringtofloat(systemfunc("grep ref_lat "
>>>>>>> +filename+ " | cut -f2 -d'=' | cut -f1 -d','" ) )
>>>>>>> npres at ref_lon = stringtofloat(systemfunc("grep ref_lon "
>>>>>>> +filename+ " | cut -f2 -d'=' | cut -f1 -d','" ) )
>>>>>>>
>>>>>>> type = "png"
>>>>>>> wks = gsn_open_wks(type,"plt_geo_6") ; Create a plot
>>>>>>> workstation
>>>>>>>
>>>>>>>
>>>>>>> opts = True ; Set some Basic Plot
>>>>>>> options
>>>>>>> opts at MainTitle = "GEOGRID FIELDS"
>>>>>>> opts at InitTime = False ; Do not plot time
>>>>>>> or footers
>>>>>>> opts at Footer = False
>>>>>>>
>>>>>>> ter = wrf_user_getvar(a,"HGT_M",0) ; Read the variable
>>>>>>> to memory
>>>>>>> lon = a->XLONG_U(0,:,:)
>>>>>>> lat = a->XLAT_U(0,:,:)
>>>>>>> printVarSummary(lat)
>>>>>>>
>>>>>>> print (lat(0,0)+", "+lon(0,0)+",0,")
>>>>>>> print (lat(0,60)+", "+lon(0,60)+",0,")
>>>>>>> print (lat(59,60)+", "+lon(59,60)+",0,")
>>>>>>> print (lat(59,0)+", "+lon(59,0)+",0")
>>>>>>>
>>>>>>>
>>>>>>> res = opts ; Use basic options
>>>>>>> for this field
>>>>>>> res at cnFillOn = True ; Create a color
>>>>>>> fill plot
>>>>>>> res at ContourParameters = (/ 0., 1000., 50. /) ; Set the levels
>>>>>>>
>>>>>>> contour = wrf_contour(a,wks,ter,res)
>>>>>>>
>>>>>>> pltres = True ; Set plot options
>>>>>>> mpres = True ; Set map options
>>>>>>> mpres at mpGeophysicalLineColor = "Black" ; Overwrite basic
>>>>>>> map settings
>>>>>>> mpres at mpGridLineColor = "Black"
>>>>>>> mpres at mpLimbLineColor = "Black"
>>>>>>> mpres at mpNationalLineColor = "Black"
>>>>>>> mpres at mpPerimLineColor = "Black"
>>>>>>> mpres at mpUSStateLineColor = "Black"
>>>>>>> mpres at mpProjection = "LambertConformal"
>>>>>>> mpres at mpLambertParallel1F = 30
>>>>>>> mpres at mpLambertParallel2F = 60
>>>>>>> mpres at mpLambertMeridianF = -98
>>>>>>> mpres at mpGridSpacingF = 0.25
>>>>>>> ;************************************************
>>>>>>> ; add the box
>>>>>>> ;************************************************
>>>>>>> ;************************************************
>>>>>>> ypts = (/ lat(10,10), lat(10,50), lat(49,50), lat(49,10),
>>>>>>> lat(10,10)/)
>>>>>>> xpts = (/ lon(10,10), lon(10,50), lon(49,50), lon(49,10),
>>>>>>> lon(10,10)/)
>>>>>>> ;************************************************
>>>>>>>
>>>>>>> resp = True ; polyline mods
>>>>>>> desired
>>>>>>> resp at gsLineColor = "black" ; color of
>>>>>>> lines
>>>>>>> resp at gsLineThicknessF = 2.0 ; thickness of
>>>>>>> lines
>>>>>>> ; resp at gsLineLabelString= "test" ; adds a line
>>>>>>> label string
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> plot = wrf_map_overlays(a,wks,(/contour/),pltres,mpres) ; Plot
>>>>>>> field over map background
>>>>>>>
>>>>>>>
>>>>>>> dum = new(4,graphic)
>>>>>>> do i = 0 , 3
>>>>>>> dum(i)=gsn_add_polyline(wks,plot,xpts(i:i+1),ypts(i:i+1),resp)
>>>>>>>
>>>>>>> end do
>>>>>>> ;*********************************************************
>>>>>>> mpres at gsMarkerColor = "Black"
>>>>>>> mpres at gsMarkerIndex = 16
>>>>>>> mpres at gsMarkerSizeF = 0.005
>>>>>>> gsn_polymarker(wks,plot,npres at ref_lon,npres at ref_lat,mpres)
>>>>>>>
>>>>>>> draw(plot)
>>>>>>> frame(wks)
>>>>>>>
>>>>>>> end
>>>>>>>
>>>>>>> --
>>>>>>> ------------------------------
>>>>>>> Cordialement,
>>>>>>> Best regards,
>>>>>>> Rabah Hachelaf
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> ncl-talk mailing list
>>>>>>> List instructions, subscriber options, unsubscribe:
>>>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ===============================
>>>>>> Jared A. Lee, Ph.D.
>>>>>> Project Scientist I
>>>>>> Research Applications Laboratory
>>>>>> National Center for Atmospheric Research
>>>>>> Boulder, Colorado, USA
>>>>>>
>>>>>> Email: jaredlee at ucar.edu (w)
>>>>>> Phone: 303.497.8485 (w)
>>>>>> Web: https://staff.ucar.edu/users/jaredlee
>>>>>> ===============================
>>>>>>
>>>>>> _______________________________________________
>>>>>> ncl-talk mailing list
>>>>>> List instructions, subscriber options, unsubscribe:
>>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ------------------------------
>>>>> Cordialement,
>>>>> Best regards,
>>>>> Rabah Hachelaf
>>>>> _______________________________________________
>>>>> ncl-talk mailing list
>>>>> List instructions, subscriber options, unsubscribe:
>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> ------------------------------
>>> Cordialement,
>>> Best regards,
>>> Rabah Hachelaf
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>
>
>
> --
> ------------------------------
> Cordialement,
> Best regards,
> Rabah Hachelaf
>
--
------------------------------
Cordialement,
Best regards,
Rabah Hachelaf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150527/aee3a951/attachment.html
More information about the ncl-talk
mailing list