[ncl-talk] define infill color for inland water bodies

Rick Brownrigg brownrig at ucar.edu
Mon Sep 8 15:12:13 MDT 2014


Hi Matthew,

Never mind what I said about commenting out the mpFillColors resource
line.  I misunderstood what you were trying to do.  For what its worth,
since I didn't have your data, I slightly modified your script to use just
gsn_csm_map(), and I did indeed get an image consisting of only inland
water colored in grey81 -- all other areas of the map where "transparent".
So I think Adam is right -- it must be a draw-order issue in the presence
of data to plot over the map.  Unfortunately, I'm not sure what to
recommend at this point.

Sorry about that...
Rick


On Mon, Sep 8, 2014 at 3:01 PM, Rick Brownrigg <brownrig at ucar.edu> wrote:

> I got a different result when I commented out this line:
>
> mpres at mpFillColors                 =
> (/"transparent","transparent","transparent","grey81"/)
>
> On Mon, Sep 8, 2014 at 2:28 PM, Matthew Fearon <Matthew.Fearon at dri.edu>
> wrote:
>
>>  Thanks, Adam for your note, but unfortunately I tried your suggestion
>> with no luck. The inland water bodies remain white. Therefore, I revised my
>> code to NOT use wrf* functions, but I am still struggling with the white
>> inland water bodies rather than grey. Any ideas what I am missing? I am
>> using wrf_map_resources to set some resources, but it shouldn't overwrite
>> like wrf_map_overlays. Here's my revised script:
>>
>>  begin
>>
>>
>>  ;type = "ps"
>>
>> type = "png"
>>
>>
>>  colors=(/"white","black","grey81","red","green","blue","black"/)
>>
>>
>>  wks = gsn_open_wks(type,pname+ndt)
>>
>> gsn_define_colormap(wks,colors)
>>
>>
>>
>>  ;********************** mpres
>>
>>
>>  mpres                              = True
>>
>> mpres at gsnDraw                      = False
>>
>> mpres at gsnFrame                     = False
>>
>>
>>  mpres                              = wrf_map_resources(f,mpres)
>>
>>
>>  mpres at mpDataBaseVersion            = "Ncarg4_1"
>>
>> mpres at mpDataSetName                = "Earth..1"
>>
>> mpres at mpNationalLineColor          = "black"
>>
>> mpres at mpNationalLineThicknessF     = 3.5
>>
>> mpres at mpGeophysicalLineColor       = "black"
>>
>> mpres at mpGeophysicalLineThicknessF  = 3.5
>>
>> mpres at mpProvincialLineColor        = "black"
>>
>> mpres at mpProvincialLineThicknessF   = 3.5
>>
>> mpres at mpFillOn                     = True
>>
>> mpres at mpFillColors                 =
>> (/"transparent","transparent","transparent","grey81"/)
>>
>> mpres at mpFillDrawOrder              = "PostDraw"
>>
>> ;mpres at mpInlandWaterFillColor       = "grey81"
>>
>> ;mpres at mpOceanFillColor             = "grey81"
>>
>> ;mpres at mpLandFillColor              = "grey81"
>>
>>
>>  mpres at tfDoNDCOverlay               = True
>>
>> mpres at gsnAddCyclic                 = False
>>
>>
>>  mpres at cnLinesOn                    = False
>>
>> mpres at cnLineLabelsOn               = False
>>
>> mpres at cnInfoLabelOn                = False
>>
>> mpres at cnFillOn                     = True
>>
>> mpres at cnFillMode                   = "RasterFill"
>>
>> mpres at cnRasterSmoothingOn          = False
>>
>> mpres at cnMinLevelValF               = 0
>>
>> mpres at cnMaxLevelValF               = 3
>>
>> mpres at cnLevelSpacingF              = 1
>>
>>
>>  mpres at lbLabelBarOn                 = False
>>
>> mpres at mpGridLineDashPattern        = 2
>>
>> mpres at tmXBLabelFontHeightF         = 0.015
>>
>> mpres at tmYLLabelFontHeightF         = 0.015
>>
>> mpres at tmXBMajorLengthF             = 0.004
>>
>> mpres at tmXBLabelDeltaF              = -0.4
>>
>> mpres at gsnMaximize                  = True
>>
>>
>>
>>  mplot = gsn_csm_contour_map(wks,vmap,mpres)
>>
>> draw(mplot)
>>
>> frame(wks)
>>
>>
>>  ------------------------------
>> *From:* Adam Phillips [asphilli at ucar.edu]
>> *Sent:* Monday, September 08, 2014 8:05 AM
>> *To:* Dennis Shea
>> *Cc:* Matthew Fearon; ncl-talk; wrfhelp at ucar.edu
>> *Subject:* Re: [ncl-talk] define infill color for inland water bodies
>>
>>     Hi Matthew,
>>  Both Kyle and Dennis are correct in that the wrf* functions can overrule
>> or ignore some resources. However, I have one more combination of resources
>> for you to try. I see that you are color filling your contours and that
>> you'd like the inland lakes to be filled gray. In order to do this you'd
>> want to draw the map fill last, and set all map fill colors (default,
>> ocean, land) to transparent other than inland water. I am also having you
>> set the contour color fill draw order to "Draw" to further make sure  that
>> the map fill is drawn after the contour color fill.
>>
>> Try this:
>>  ; note that you could have set mpLandFillColor, mpOceanFIllColor, etc.
>> instead of
>> ; mpFillColors
>>  mpres at mpFillColors =
>> (/"transparent","transparent","transparent","grey81"/)
>>  mpres at mpFillDrawOrder = "PostDraw"
>>
>>  var3_res at cnFillDrawOrder = "Draw"    ; might not be needed
>>
>>  If the above combination does not work, then I would follow Dennis'
>> suggestions of either contacting wrf-help or stripping wrf_map_overlays out
>> and modifying it to your own needs.
>>  Adam
>>
>> On Mon, Sep 8, 2014 at 7:45 AM, Dennis Shea <shea at ucar.edu> wrote:
>>
>>>   The wrf_* were written by wrfhelp. You should send questions to
>>> wrfhelp at ucar.edu on all of these functions. You can cc ncl-talk at ucar.edu
>>>
>>>  As noted, the resources may not be allowed or are overwritten by the
>>> wrf code.
>>>  I'd suggest extracting the function from the library, modifying the
>>> function and then calling the modified function.
>>>
>>>  Good luck
>>>
>>> On Sun, Sep 7, 2014 at 11:10 PM, Kyle Griffin <ksgriffin2 at wisc.edu>
>>> wrote:
>>>
>>>> Although I'm not certain, most WRF plotting scripts overwrite many of
>>>> the more complicated resources. It sounds like these map fill resources are
>>>> included in the list that they either don't recognize or overwrite.
>>>>
>>>>  Kyle
>>>>   On Sep 7, 2014 8:27 PM, "Matthew Fearon" <Matthew.Fearon at dri.edu>
>>>> wrote:
>>>>
>>>>>  Thanks, Kyle, but I'm missing something still. My script is below.
>>>>> The wrf_map_overlays function is perhaps messing up the draw order or
>>>>> recoloring inland water bodies white. Any ideas?
>>>>>
>>>>>
>>>>>  type = "png"
>>>>>
>>>>>
>>>>>  wks = gsn_open_wks(type,pname+ndt)
>>>>>
>>>>> gsn_define_colormap(wks,"MPL_terrain")
>>>>>
>>>>> res                                = True
>>>>>
>>>>> res at NoHeaderFooter                 = True
>>>>>
>>>>>
>>>>>  mpres                              = True
>>>>>
>>>>> mpres at mpDataBaseVersion            = "Ncarg4_0"
>>>>>
>>>>> mpres at mpDataSetName                = "Earth..1"
>>>>>
>>>>> mpres at mpNationalLineColor          = "black"
>>>>>
>>>>> mpres at mpNationalLineThicknessF     = 2
>>>>>
>>>>> mpres at mpGeophysicalLineColor       = "black"
>>>>>
>>>>> mpres at mpGeophysicalLineThicknessF  = 2
>>>>>
>>>>> mpres at mpProvincialLineColor        = "black"
>>>>>
>>>>> mpres at mpProvincialLineThicknessF   = 3
>>>>>
>>>>> ;mpres at mpFillOn                     = True
>>>>>
>>>>> ;mpres at mpFillDrawOrder              = "PreDraw"
>>>>>
>>>>> mpres at mpInlandWaterFillColor       = "grey81"
>>>>>
>>>>> mpres at mpOceanFillColor             = "grey81"
>>>>>
>>>>> mpres at mpLandFillColor              = "grey81"
>>>>>
>>>>>
>>>>>  pltres = True
>>>>>
>>>>>
>>>>>  var3_res = res
>>>>>
>>>>> var3_res at ContourParameters     = (/ 0, 3, 1 /)
>>>>>
>>>>> var3_res at cnFillMode            = "RasterFill"
>>>>>
>>>>> var3_res at cnFillOn              = True
>>>>>
>>>>> var3_res at cnRasterSmoothingOn   = False
>>>>>
>>>>> var3_res at cnFillColors          =
>>>>> (/"grey81","red","green","blue","black"/)
>>>>>
>>>>> var3_res at cnFillDrawOrder       = "Draw"
>>>>>
>>>>> con3_var = wrf_contour(f,wks,vmap,var3_res)
>>>>>
>>>>>
>>>>>
>>>>>  pltres at CommonTitle = True
>>>>>
>>>>> pltres at PlotTitle = ndt
>>>>>
>>>>> plot = wrf_map_overlays(f,wks,(/con3_var/),pltres,mpres)
>>>>>
>>>>>
>>>>>  ------------------------------
>>>>> *From:* windrunnerxc at gmail.com [windrunnerxc at gmail.com] on behalf of
>>>>> Kyle Griffin [ksgriffin2 at wisc.edu]
>>>>> *Sent:* Sunday, September 07, 2014 5:33 PM
>>>>> *To:* Matthew Fearon; ncl-talk
>>>>> *Subject:* Re: [ncl-talk] define infill color for inland water bodies
>>>>>
>>>>>   Don't use mpFillColor. Use a combination of mpLandFillColor,
>>>>> mpOceanFillColor, and mpInlandWaterFillColor. These are your desired
>>>>> resources.
>>>>>
>>>>> Kyle
>>>>> On Sep 7, 2014 4:56 PM, "Matthew Fearon" <Matthew.Fearon at dri.edu>
>>>>> wrote:
>>>>>
>>>>>>  Dear NCL Users,
>>>>>>
>>>>>>  What is the correct method for filling in inland water bodies with
>>>>>> a specified color. Here's the resources I have been experimenting with, but
>>>>>> none seem to work, eg, inland lakes are consistently colored white not
>>>>>> grey81. Thanks, Matt
>>>>>>
>>>>>>
>>>>>>  mpres                              = True
>>>>>>
>>>>>> ;mpres at mpDataBaseVersion            = "Ncarg4_0"
>>>>>>
>>>>>> ;mpres at mpDataSetName                = "Earth..4"
>>>>>>
>>>>>> mpres at mpNationalLineColor          = "black"
>>>>>>
>>>>>> mpres at mpNationalLineThicknessF     = 2
>>>>>>
>>>>>> mpres at mpGeophysicalLineColor       = "black"
>>>>>>
>>>>>> mpres at mpGeophysicalLineThicknessF  = 2
>>>>>>
>>>>>> mpres at mpProvincialLineColor        = "black"
>>>>>>
>>>>>> mpres at mpProvincialLineThicknessF   = 3
>>>>>>
>>>>>> mpres at mpFillOn                     = True
>>>>>>
>>>>>> mpres at mpMonoFillColor              = True
>>>>>>
>>>>>> mpres at mpFillColor                  = "grey81"
>>>>>>
>>>>>> mpres at mpFillAreaSpecifiers         = "water"   ;"inlandwater"
>>>>>>
>>>>>> mpres at mpSpecifiedFillColors        = "grey81"
>>>>>>
>>>>>> _______________________________________________
>>>>>> ncl-talk mailing list
>>>>>> List instructions, subscriber options, unsubscribe:
>>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>>
>>>>>>
>>>> _______________________________________________
>>>> ncl-talk mailing list
>>>> List instructions, subscriber options, unsubscribe:
>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>
>>>>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>
>>
>> --
>>   Adam Phillips
>>  Associate Scientist,  Climate and Global Dynamics Division, NCAR
>>  www.cgd.ucar.edu/staff/asphilli/   303-497-1726
>>
>>  <http://www.cgd.ucar.edu/staff/asphilli>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> 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/20140908/991bb2e5/attachment.html 


More information about the ncl-talk mailing list