[ncl-talk] problem with plotting

Adam Phillips asphilli at ucar.edu
Mon Apr 1 16:46:11 MDT 2019


Hi Anahita,
Thanks for sending the error message. The message is telling you what to do:

gsn_add_cyclic: Warning: The range of your longitude data is not 360.
(0) You may want to set the gsnAddCyclic resource to False to avoid a
(0) warning message from the spline function.

Try setting res at gsnAddCyclic = False and see if that helps.
Adam

On Mon, Apr 1, 2019 at 4:39 PM Anahita Amiri Farahani <aamir003 at ucr.edu>
wrote:

> and the error is:
>
> (0) gsn_add_cyclic: Warning: The range of your longitude data is not 360.
>
> (0) You may want to set the gsnAddCyclic resource to False to avoid a
>
> (0) warning message from the spline function.
>
> 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
>
> (0) gsn_add_cyclic: Warning: The range of your longitude data is not 360.
>
> (0) You may want to set the gsnAddCyclic resource to False to avoid a
>
> (0) warning message from the spline function.
>
> 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
>
> On Mon, Apr 1, 2019 at 3:08 PM Anahita Amiri Farahani <aamir003 at ucr.edu>
> wrote:
>
>> Dear all,
>>
>> I try to extract some part of Africa and plot it but it does not work,
>> here is the code and attached is the plot.
>> 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"
>>
>>
>> ana=addfile("SDE_sw_lw_cam4_dust_base.nc","r")
>> FSNT  = lonFlip(ana->FSNT)
>> FSNTC  = lonFlip(ana->FSNTC)
>> FLNT = lonFlip(ana->FLNT)
>> FLNTC= lonFlip(ana->FLNTC)
>> lat=ana->lat
>> lon=ana->lon
>> delete(ana)
>>
>>
>> ana=addfile("SDE_sw_lw_cam4_dust.nc","r")
>> FSNT_diff  = lonFlip(ana->FSNT)
>> FSNTC_diff  = lonFlip(ana->FSNTC)
>> FLNT_diff = lonFlip(ana->FLNT)
>> FLNTC_diff = lonFlip(ana->FLNTC)
>> delete(ana)
>>
>>
>> ;************** AFRICA *****************
>> lat1 = lat(45:61)
>> lon1=fspan(-30,15,19)
>>
>> lat1 at units = "degrees_north"
>> lon1 at units = "degrees_east"
>>
>> rad    = 4.0*atan(1.0)/180.0
>> clat   = cos(lat1*rad)
>> ;********************** BASE ******************************
>> sde_toa_sw1=FSNT(:,45:61,{-30:15})-FSNTC(:,45:61,{-30:15})
>> sde_toa_lw1=-1.*(FLNT(:,45:61,{-30:15})-FLNTC(:,45:61,{-30:15}))
>>
>> ;********************** Dust ******************************
>> sde_toa_sw_diff1=FSNT_diff(:,45:61,{-30:15})-FSNTC_diff(:,45:61,{-30:15})
>>
>> sde_toa_lw_diff1=-1.*(FLNT_diff(:,45:61,{-30:15})-FLNTC_diff(:,45:61,{-30:15}))
>> ; ******** Annual Global Mean CHANGES ********
>>
>> sde_toa_tot= sde_toa_sw1 + sde_toa_lw1
>> sde_toa_tot_diff= sde_toa_sw_diff1 + sde_toa_lw_diff1
>> sde_toa=sde_toa_tot_diff-sde_toa_tot
>>
>> ;copy_VarCoords(FSNT,sde_toa)
>>
>>
>> sde_toa!2         = "lon"                  ; variable/dim name
>> sde_toa&lon     =  lon1                   ; create coordinate variable
>> sde_toa!1         = "lat"                  ; variable/dim name
>> sde_toa&lat     =  lat1                   ; create coordinate variable
>> sde_toa!0         = "time"
>>
>>
>> copy_VarCoords(sde_toa,sde_toa_tot)
>> copy_VarCoords(sde_toa,sde_toa_tot_diff)
>>
>>
>> sde_toa_tot!0         = "time"                  ; variable/dim name
>> sde_toa_tot_diff!0         = "time"                  ; variable/dim name
>>
>>
>>
>> ;toa_toa_area = avg(wgt_areaave(sde_toa, area, 1.0, 0))
>> toa_toa_clat = avg(wgt_areaave(sde_toa, clat, 1.0, 0))
>> ;print("sde_toa_tot="+toa_toa_area)
>> print("sde_toa_tot="+toa_toa_clat)
>>
>> sde_toa_tot_annual = month_to_annual(sde_toa_tot, 1)
>> sde_toa_tot_diff_annual = month_to_annual(sde_toa_tot_diff, 1)
>>
>>
>> dsizesPD = dimsizes(sde_toa_tot_diff_annual)
>> ntim     = dsizesPD(0)
>> nlat     = dsizesPD(1)
>> mlon     = dsizesPD(2)
>>
>>
>> low_base = sde_toa_tot_annual(lat|:,lon|:,year|:)
>> low_dust = sde_toa_tot_diff_annual(lat|:,lon|:,year|:)
>>
>> low_avebase = dim_avg(low_base)
>> low_avedust = dim_avg(low_dust)
>> low_varbase = dim_variance(low_base)
>> low_vardust = dim_variance(low_dust)
>> low_sPD   = conform_dims((/nlat,mlon/),ntim,-1)
>> ;alpha = swPD(0,:,:)
>> alpha =
>> (1.0-ttest(low_avebase,low_varbase,low_sPD,low_avedust,low_vardust,low_sPD,False,False))
>>
>> alpha!0         = "lat"
>> alpha&lat     =  lat1
>> alpha!1         = "lon"
>> alpha&lon     =  lon1
>>
>> ;***** Global Annual Significance ********
>>
>>
>>
>> low_base_area = wgt_areaave(sde_toa_tot_annual, clat, 1.0, 0)
>> low_dust_area = wgt_areaave(sde_toa_tot_diff_annual, clat, 1.0, 0)
>> low_avD      = avg(low_base_area)
>> low_avI      = avg(low_dust_area)
>> low_vaD      = variance(low_base_area)
>> low_vaI      = variance(low_dust_area)
>> low_sD       = ntim
>>
>> low_prob =
>> 100.0*(1.0-ttest(low_avD,low_vaD,low_sD,low_avI,low_vaI,low_sD,False,False))
>> print("Significance level of SDE_global = " + sprintf("%5.2f", low_prob))
>>
>>
>>  low_AAE = dim_avg(sde_toa(lat|:,lon|:,time|:))
>>
>>  low_AAE!1         = "lon"                  ; variable/dim name
>>  low_AAE&lon     =  lon1                   ; create coordinate variable
>>  low_AAE!0         = "lat"                  ; variable/dim name
>>  low_AAE&lat     =  lat1                   ; create coordinate variable
>>
>>
>>
>>
>> wks = gsn_open_wks("eps","SDE_TOA_tot_ann")
>> gsn_define_colormap(wks,"BlWhRe")   ; choose color
>> ;gsn_define_colormap(wks,"BlAqGrYeOrRe")
>> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>>   res                     = True               ; plot mods desired
>>   res at cnFillOn            = True              ; turn on color
>>   res at gsnSpreadColors     = True               ; use full color map
>>   res at cnLinesOn           = False              ; no contour lines
>>   res at cnLineLabelsOn      = False              ; no line labels
>>
>>   res at mpMaxLatF = 90                         ; specify the plot domain
>>   res at mpMinLatF = -90                         ;
>>   res at mpMinLonF = 0                        ;
>>   res at mpMaxLonF = 357.5
>>   res at mpCenterLonF= 0;178.75
>>   ;res at gsnAddCyclic        = False
>>
>> ;res at cnLevelSelectionMode =  "AutomaticLevels"   ; AutomaticLevels
>>
>>   res at cnLevelSelectionMode =  "ManualLevels"   ; AutomaticLevels
>>   res at cnMinLevelValF       = -4.              ; min level
>>   res at cnMaxLevelValF       =  4.              ; max level
>>   res at cnLevelSpacingF      =  0.2                ; interval
>>
>>
>>
>> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>> res at tiMainString        = "Annual changes SDE at TOA "
>>
>> res at gsnDraw              = False           ; Do not draw plot
>> res at gsnFrame             = False           ; Do not advance frome
>> plot = gsn_csm_contour_map_ce(wks,low_AAE(:,:), res)
>>
>> ; ========================= PLOT 2 ==============================
>>   res2 = True                            ; res2 probability plots
>>
>>   res2 at gsnDraw             = False       ; Do not draw plot
>>   res2 at gsnFrame            = False       ; Do not advance frome
>>
>>   res2 at cnLevelSelectionMode = "ManualLevels" ; set manual contour levels
>>   res2 at cnMinLevelValF      = 0.00        ; set min contour level
>>   res2 at cnMaxLevelValF      = 1.05        ; set max contour level
>>   res2 at cnLevelSpacingF     = 0.05        ; set contour spacing
>>
>>   res2 at cnInfoLabelOn       = False       ; turn off info label
>>   res2 at cnNoDataLabelOn     = False
>>
>>   res2 at cnLinesOn           = False       ; do not draw contour lines
>>   res2 at cnLineLabelsOn      = False       ; do not draw contour labels
>>   res2 at gsnLeftString = ""
>>   res2 at gsnRightString = ""
>>
>>   res2 at cnFillScaleF        = 0.6         ; add extra density
>>   res2 at cnLevelSpacingF     = 0.04        ; set contour spacing
>>
>>   plot2   = gsn_csm_contour(wks,gsn_add_cyclic_point(alpha(:,:)), res2)
>>   plot2   = ShadeGtContour(plot2, 0.95, 17)  ; shade all areas less than
>> the
>>                                              ; 0.05 contour level
>>   overlay (plot, plot2)
>>
>>   draw (plot)
>>   frame(wks)
>>  delete(wks)
>>
>>
>> _______________________________________________
> 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>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20190401/988f2690/attachment.html>


More information about the ncl-talk mailing list