[ncl-talk] Graphical error

Rashed Mahmood rashidcomsis at gmail.com
Tue Apr 24 09:30:19 MDT 2018


Adding printVarSummary(tot_prc) would have given you some idea of your
array sizes.

I think, the problem is when you use addfiles, by default it would
concatenate files when a time dimension is defined. If you only has two
dimensional data then add a line after the line "addfiles":

*ListSetType* <https://www.ncl.ucar.edu/Document/Functions/Built-in/ListSetType.shtml>(f,
"join")







On Tue, Apr 24, 2018 at 3:43 AM, Md. Jalal Uddin <dmjalal90 at gmail.com>
wrote:

> Dear Sir,
>
> Thanks for your kind help. I followed your instruction, tot_prc =
> dim_sum_n_Wrap(prc,0) . I am getting errors when I used two-dimensional
> TRMM 3B42 data. I got a map without precipitation which is in the
> attachment.
>
> For two dimensional data,
> warning:Non-monotonic coordinate array generated -- check validity of the
> aggregated (leftmost) dimension
> sum_op_ncl : dim_sum_n over dimension(s): lat
> (0) Error: scalar_field: If the input data is 1-dimensional, you must set
> sfXArray and sfYArray to 1-dimensional arrays of the same length.
> warning:create: Bad HLU id passed to create, ignoring it
> warning:ContourPlotSetValues: Data values out of range of levels set by
> EXPLICITLEVELS mode
>
> When I added multiple files manually, it gives me a right map (in the
> attachment).  I also tried to plot for three-dimensional data, but it gives
> me following warning.
>
> gsn_csm_contour_map_ce: Fatal: the input data array must be 1D or 2D
>
> I am looking forward to your kind advice and positive response.
>
> Cheers,
> Jalal
>
> On Tue, Apr 24, 2018 at 4:40 AM, Rashed Mahmood <rashidcomsis at gmail.com>
> wrote:
>
>> Hi Jalal,
>> The simplest answer would be to use one of the "dim_sum*" functions, e.g.
>> in your case you could try:
>> tot_prc = dim_sum_n_Wrap(prc,0)
>>
>> This should give you sum for the time period you are selecting using
>> addfiles. Note that you might need to consider/think about the units, e.g.
>> total precipitation during the selected time period etc.
>>
>> Cheers,
>> Rashed
>>
>> Post doctoral fellow,
>> University of Victoria, Victoria BC.
>>
>>
>>
>> On Sat, Apr 21, 2018 at 5:07 AM, Md. Jalal Uddin <dmjalal90 at gmail.com>
>> wrote:
>>
>>> Dear Sir,
>>> My precipitation data is TRMM 3B42 that is 3 hourly. What should I add
>>> in the following script to sum precipitation?
>>>
>>>
>>>   diri   = "./"
>>>   fili    = systemfunc("cd "+diri+" ; ls 3B42RT.2013*.7.nc4")
>>>   pthi = diri+fili
>>>  print(fili)
>>>
>>>  f = addfiles(pthi, "r")
>>>  prc = f[:]->precipitation
>>>
>>>  printVarSummary(prc)
>>>
>>> Best Wishes
>>> Jalal
>>>
>>> On Mon, Apr 9, 2018 at 3:50 AM, Dennis Shea <shea at ucar.edu> wrote:
>>>
>>>> How about addfiles
>>>>
>>>> https://www.ncl.ucar.edu/Document/Functions/Built-in/addfiles.shtml
>>>> -------------
>>>>
>>>>   diri   = "./"
>>>>   fili    = systemfunc("cd "+diri+" ; ls 3B42RT.2013*.7.nc4")
>>>>   pthi = diri+fili
>>>>  print(fili)
>>>>
>>>>  f = addfiles(pthi, "r")
>>>>  prc = f[:]->precipitation
>>>>
>>>>  printVarSummary(prc)
>>>>
>>>> On Sun, Apr 8, 2018 at 6:51 AM, Guido Cioni <guidocioni at gmail.com>
>>>> wrote:
>>>>
>>>>> You should provide clean code when writing to ncl-talk. There are a
>>>>> lot of commented lines in your script and it is hard to understand what you
>>>>> are actually doing. Everyone's time here is valuable ;)
>>>>>
>>>>> I suspect that your error is coming from this line
>>>>>
>>>>>   prc_all = (prc1 + prc2 + prc3 + prc4 + prc5 + prc6 + prc7 + prc8 + prc9 + prc10 + prc11 + prc12 + prc13 + prc14 + prc15 + prc16 + prc17 + prc18 + prc19 + prc20 + prc21 + prc22 + prc23 + prc24 + prc25 + prc26 + prc27 + prc28 + prc29 + prc30 + prc31 + prc32 + prc33 + prc34 + prc35 + prc36 + prc37 + prc38 + prc39 + prc40 + prc41 + prc42 + prc43 + prc44 + prc45 + prc46 + prc47 + prc48 + prc49)
>>>>>
>>>>>
>>>>> In this assignment every metadata (including coordinate variables)
>>>>> will be lost. Thus, NCL doesn't know how to interpret the coordinates of
>>>>> the variable that you are trying to plot. It's weird because it appears
>>>>> that in a commented part of your code you were exactly trying to fix this
>>>>> problem
>>>>>
>>>>>    ;prc_last        := prc_all->precipitation
>>>>>    ;prc!0      = "lat"                   ; 1st ... name the dimensions
>>>>>    ;prc!1      = "lon"
>>>>>    ;prc&lat    =  lat                    ; create coordinate variable
>>>>>    ;prc&lon    =  lon
>>>>>
>>>>>
>>>>> So...few options to fix this.
>>>>>
>>>>> [1] Re-assign coordinate variables as you did in the aforementioned
>>>>> part of the code which is now commented out. Note that you should use the
>>>>> names lat2d and lon2d if your coordinate variables are 2d instead of 1d.
>>>>>
>>>>> [2] Directly copy var coordinates (and possibly attributes) using one
>>>>> of the function https://www.ncl.ucar.edu/Document/Functions/Contrib
>>>>> uted/copy_VarCoords.shtml: https://www.ncl.ucar.edu/Document
>>>>> /Functions/Contributed/copy_VarMeta.shtml.
>>>>>
>>>>> Doing copy_VarCoords(prc1,prc_all) should do the trick.
>>>>>
>>>>> [3] Manually assign the coordinate variables to the plotting routine
>>>>> using the resources sfXarray and sfYArray. (this
>>>>> https://www.ncl.ucar.edu/Applications/contour1d.shtml can help).
>>>>>
>>>>>
>>>>> Cheers
>>>>>
>>>>> On 8. Apr 2018, at 13:48, Md. Jalal Uddin <dmjalal90 at gmail.com> wrote:
>>>>>
>>>>> Dear Sir/ Madam,
>>>>>
>>>>> I am a new user in NCL. I am getting following error in NCL. I tried
>>>>> to fix it by following NCL guidelines, but don't know why it is not fixing.
>>>>> I used TRMM3B42 3 hourly data. Could you help me, please?
>>>>>
>>>>> (0)    check_for_y_lat_coord: Warning: Data either does
>>>>>     not contain a valid latitude coordinate array or doesn't
>>>>>     contain one at all
>>>>> (0)    check_for_lon_coord: Warning: Data either does
>>>>>     not contain a valid longitude coordinate array or doesn't
>>>>>     contain one at all
>>>>>
>>>>> (0)   is_valid_lat_ycoord: Warning: The units attribute of
>>>>>     the Y coordinate array is not set to one of the allowable
>>>>>     units values (i.e. 'degrees_north'). Your latitude labels
>>>>>     may not be correct.
>>>>>
>>>>> (0)   is_valid_lat_xcoord: Warning: The units attribute of
>>>>>     the X coordinate array is not set to one of the allowable
>>>>>     units values (i.e. 'degrees_east'). Your longitude labels
>>>>>     may not be correct.
>>>>>
>>>>> ;;;;;My script
>>>>>
>>>>>
>>>>> ;***********************************************
>>>>> ;
>>>>> ; These files are loaded by default in NCL V6.2.0 and newer
>>>>> ; load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
>>>>> ; load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
>>>>>
>>>>> begin
>>>>> ;************************************************
>>>>> ; Read the file
>>>>> ;************************************************
>>>>>   f1 = addfile("3B42RT.2013051100.7.nc4","r")
>>>>>   prc1  = f1->precipitation       ;; prc1 here is two dimensional
>>>>>
>>>>>   f2 = addfile("3B42RT.2013051103.7.nc4","r")
>>>>>   prc2  = f2->precipitation
>>>>>
>>>>>   f3 = addfile("3B42RT.2013051106.7.nc4","r")
>>>>>   prc3  = f3->precipitation
>>>>>
>>>>>   f4 = addfile("3B42RT.2013051109.7.nc4","r")
>>>>>   prc4  = f4->precipitation
>>>>>
>>>>>   f5 = addfile("3B42RT.2013051112.7.nc4","r")
>>>>>   prc5  = f5->precipitation
>>>>>
>>>>>   f6 = addfile("3B42RT.2013051115.7.nc4","r")
>>>>>   prc6  = f6->precipitation
>>>>>
>>>>>   f7 = addfile("3B42RT.2013051118.7.nc4","r")
>>>>>   prc7  = f7->precipitation
>>>>>
>>>>>   f8 = addfile("3B42RT.2013051121.7.nc4","r")
>>>>>   prc8  = f8->precipitation
>>>>>
>>>>>   f9 = addfile("3B42RT.2013051200.7.nc4","r")
>>>>>   prc9  = f9->precipitation
>>>>>
>>>>>   f10 = addfile("3B42RT.2013051203.7.nc4","r")
>>>>>   prc10  = f10->precipitation
>>>>>
>>>>>   f11 = addfile("3B42RT.2013051206.7.nc4","r")
>>>>>   prc11  = f11->precipitation
>>>>>
>>>>> f12 = addfile("3B42RT.2013051209.7.nc4","r")
>>>>>   prc12  = f12->precipitation
>>>>>
>>>>> f13 = addfile("3B42RT.2013051212.7.nc4","r")
>>>>>   prc13  = f13->precipitation
>>>>>
>>>>> f14 = addfile("3B42RT.2013051215.7.nc4","r")
>>>>>   prc14  = f14->precipitation
>>>>>
>>>>> f15 = addfile("3B42RT.2013051218.7.nc4","r")
>>>>>   prc15  = f15->precipitation
>>>>>
>>>>> f16 = addfile("3B42RT.2013051221.7.nc4","r")
>>>>>   prc16  = f16->precipitation
>>>>>
>>>>> f17 = addfile("3B42RT.2013051300.7.nc4","r")
>>>>>   prc17  = f17->precipitation
>>>>>
>>>>> f18 = addfile("3B42RT.2013051303.7.nc4","r")
>>>>>   prc18  = f18->precipitation
>>>>>
>>>>> f19 = addfile("3B42RT.2013051306.7.nc4","r")
>>>>>   prc19  = f19->precipitation
>>>>>
>>>>> f20 = addfile("3B42RT.2013051309.7.nc4","r")
>>>>>   prc20  = f20->precipitation
>>>>>
>>>>> f21 = addfile("3B42RT.2013051312.7.nc4","r")
>>>>>   prc21  = f21->precipitation
>>>>>
>>>>> f22 = addfile("3B42RT.2013051315.7.nc4","r")
>>>>>   prc22  = f22->precipitation
>>>>>
>>>>>  f23 = addfile("3B42RT.2013051318.7.nc4","r")
>>>>>   prc23  = f23->precipitation
>>>>>
>>>>> f24 = addfile("3B42RT.2013051321.7.nc4","r")
>>>>>   prc24  = f24->precipitation
>>>>>
>>>>> f25 = addfile("3B42RT.2013051400.7.nc4","r")
>>>>>   prc25  = f25->precipitation
>>>>>
>>>>> f26 = addfile("3B42RT.2013051403.7.nc4","r")
>>>>>   prc26  = f26->precipitation
>>>>>
>>>>> f27 = addfile("3B42RT.2013051406.7.nc4","r")
>>>>>   prc27  = f27->precipitation
>>>>>
>>>>> f28 = addfile("3B42RT.2013051409.7.nc4","r")
>>>>>   prc28  = f28->precipitation
>>>>>
>>>>> f29 = addfile("3B42RT.2013051412.7.nc4","r")
>>>>>   prc29  = f29->precipitation
>>>>>
>>>>> f30 = addfile("3B42RT.2013051415.7.nc4","r")
>>>>>   prc30  = f30->precipitation
>>>>>
>>>>> f31 = addfile("3B42RT.2013051418.7.nc4","r")
>>>>>   prc31  = f31->precipitation
>>>>>
>>>>> f32 = addfile("3B42RT.2013051421.7.nc4","r")
>>>>>   prc32  = f32->precipitation
>>>>>
>>>>> f33 = addfile("3B42RT.2013051500.7.nc4","r")
>>>>>   prc33  = f33->precipitation
>>>>>
>>>>> f34 = addfile("3B42RT.2013051503.7.nc4","r")
>>>>>   prc34  = f34->precipitation
>>>>>
>>>>> f35 = addfile("3B42RT.2013051506.7.nc4","r")
>>>>>   prc35  = f35->precipitation
>>>>>
>>>>> f36 = addfile("3B42RT.2013051509.7.nc4","r")
>>>>>   prc36  = f36->precipitation
>>>>>
>>>>> f37 = addfile("3B42RT.2013051512.7.nc4","r")
>>>>>   prc37  = f37->precipitation
>>>>>
>>>>> f38 = addfile("3B42RT.2013051515.7.nc4","r")
>>>>>   prc38  = f38->precipitation
>>>>>
>>>>> f39 = addfile("3B42RT.2013051518.7.nc4","r")
>>>>>   prc39  = f39->precipitation
>>>>>
>>>>> f40 = addfile("3B42RT.2013051521.7.nc4","r")
>>>>>   prc40  = f40->precipitation
>>>>>
>>>>> f41 = addfile("3B42RT.2013051600.7.nc4","r")
>>>>>   prc41  = f41->precipitation
>>>>>
>>>>> f42 = addfile("3B42RT.2013051603.7.nc4","r")
>>>>>   prc42  = f42->precipitation
>>>>>
>>>>> f43 = addfile("3B42RT.2013051606.7.nc4","r")
>>>>>   prc43  = f43->precipitation
>>>>>
>>>>> f44 = addfile("3B42RT.2013051609.7.nc4","r")
>>>>>   prc44  = f44->precipitation
>>>>>
>>>>> f45 = addfile("3B42RT.2013051612.7.nc4","r")
>>>>>   prc45  = f45->precipitation
>>>>>
>>>>> f46 = addfile("3B42RT.2013051615.7.nc4","r")
>>>>>   prc46  = f46->precipitation
>>>>>
>>>>> f47 = addfile("3B42RT.2013051618.7.nc4","r")
>>>>>   prc47  = f47->precipitation
>>>>>
>>>>> f48 = addfile("3B42RT.2013051621.7.nc4","r")
>>>>>   prc48  = f48->precipitation
>>>>>
>>>>> f49 = addfile("3B42RT.2013051700.7.nc4","r")
>>>>>   prc49  = f49->precipitation
>>>>>
>>>>>   prc_all = (prc1 + prc2 + prc3 + prc4 + prc5 + prc6 + prc7 + prc8 + prc9 + prc10 + prc11 + prc12 + prc13 + prc14 + prc15 + prc16 + prc17 + prc18 + prc19 + prc20 + prc21 + prc22 + prc23 + prc24 + prc25 + prc26 + prc27 + prc28 + prc29 + prc30 + prc31 + prc32 + prc33 + prc34 + prc35 + prc36 + prc37 + prc38 + prc39 + prc40 + prc41 + prc42 + prc43 + prc44 + prc45 + prc46 + prc47 + prc48 + prc49)
>>>>>
>>>>>    ;prc_last        := prc_all->precipitation
>>>>>    ;prc!0      = "lat"                   ; 1st ... name the dimensions
>>>>>    ;prc!1      = "lon"
>>>>>    ;prc&lat    =  lat                    ; create coordinate variable
>>>>>    ;prc&lon    =  lon
>>>>>
>>>>>
>>>>> ;lat_p       = (/-35,-30,-25,-20,-15,-10,-5,0,5,10,15,20,25,30/)
>>>>> ;lon_p       = (/0,10,20,30,40,50,60,70,80,90,100,110,120,130,135/)
>>>>>     ;X!0      = "lat"
>>>>>     ;Y!1      = "lon"
>>>>> ;X&lat at units = "degrees_north"
>>>>> ;Y&lon at units = "degrees_east"
>>>>> ;grid        = new((/14,15),float)
>>>>>
>>>>> ;grid&lat    = lat_p
>>>>> ;grid&lon    = lon_p
>>>>>
>>>>> printVarSummary(prc_all)
>>>>>
>>>>> ;************************************************
>>>>> ; create colors
>>>>> ;*************************************************
>>>>>   wks = gsn_open_wks("png","Mahasen")             ; open a workstation and send data to eps
>>>>>
>>>>>   colors = (/ (/255,255,255/), (/244,255,244/), \
>>>>>               (/217,255,217/), (/163,255,163/), (/106,255,106/), \
>>>>>               (/43,255,106/), (/0,224,0/), (/0,134,0/),(/255,255,0/),\
>>>>>               (/255,127,0/) /) / 255.   ; be sure to make this a float!
>>>>>
>>>>> ;************************************************
>>>>> ; create panel plots
>>>>> ;*************************************************
>>>>>   res                      = True               ; plot options desired
>>>>>
>>>>>   res at cnFillOn             = True               ; turn on color fill
>>>>>   res at cnLinesOn            = False              ; turn off contour lines
>>>>>   res at cnFillPalette        = colors
>>>>>
>>>>>   res at cnLevelSelectionMode = "ExplicitLevels"   ; set explicit contour levels
>>>>>   res at cnLevels             = (/5,10,15,20,25,30,35,40,45,50,55/)
>>>>>   ;res at cnLevels             = (/0.1,0.2,0.4,0.8,1.6,3.2,6.4,12.8,20,25,30/)
>>>>>
>>>>>
>>>>>   res at mpFillOn             = True              ; turn on gray continents
>>>>>   res at pmTickMarkDisplayMode = "Always"
>>>>>
>>>>>   res at mpLimitMode = "LatLon"        ; select subregion
>>>>>   res at mpMinLatF            = -35.
>>>>>   res at mpMaxLatF            =   30.
>>>>>   res at mpMinLonF            =  0.
>>>>>   res at mpMaxLonF            =  135.
>>>>>   ;res at mpProjection = "Mercator"
>>>>>   res at lbOrientation        = "horizontal"
>>>>>   res at trGridType           = "TriangularMesh"
>>>>>   ;res at trGridType           = "curvilinear"
>>>>>
>>>>>   res at tmYROn      = False     ; turn off right and top tickmarks
>>>>>   res at tmXTOn      = False
>>>>>
>>>>>  ; add polygon to plot
>>>>>    y = (/10.3, 10.8, 11.4, 11.9, 12.3, 13.1, 13.7, 14.2, 14.7, 15.6, 16.5, 17.5, 18.5, 19.7, 20.7, 22.4, 24.3/)
>>>>>    x = (/87.0, 86.7, 86.5, 86.2, 85.6, 85.4, 85.4, 85.8, 86.2, 86.7, 87.2, 87.6, 88.4, 89.0, 89.9, 91.1, 92.6/)
>>>>>    resp = True ; mods yes
>>>>>    resp at gsLineThicknessF = 3.0                ; line thickness
>>>>>    resp at gsLineColor      = "black"
>>>>>
>>>>>  ;Add markers to the trajectories.
>>>>>    amres                = True         ; marker resources for best track
>>>>>    amres at gsMarkerIndex  = 14           ; marker style (filled circle)
>>>>>    amres at gsMarkerSizeF  = 8.0          ; marker size
>>>>>    amres at gsMarkerColor  = "black"      ; maker color
>>>>>
>>>>>  plot = gsn_csm_contour_map(wks, prc_all,res)  ; create plot
>>>>>  d = gsn_add_polyline(wks,plot,x,y,resp)
>>>>>  d1 = gsn_add_polymarker(wks,plot,x,y,amres)
>>>>>   draw(plot)
>>>>>   frame(wks)
>>>>> end
>>>>>
>>>>> Best Wishes
>>>>> Jalal
>>>>>
>>>>> --
>>>>> *Md. Jalal Uddin*
>>>>> MSc in Applied Meteorology (English Language)
>>>>> Nanjing University of Information, Science and Technology, China
>>>>> Jasmine Jiangsu Government Scholar
>>>>> Cell: +8613260859092
>>>>> Office: Beichen Building, School of Geography and Remote Sensing, Room
>>>>> No. 406
>>>>>
>>>>> *AND *
>>>>> B.Sc. in Disaster Management (Hons.)
>>>>> Patuakhali Science and Technology University, Bangladesh.
>>>>> Cell: +8801792052662, +8801838613203
>>>>> Email: dmjalal90 at gmail.com
>>>>> Web: www.dmjalal90.weebly.com
>>>>> Facebook: jalal.hossen.39
>>>>> LinkedIn: https://bd.linkedin.com/in/md-jalal-uddin-80a026b0
>>>>> Twitter: dmjalal90
>>>>> Skype: dmjalal90
>>>>> _______________________________________________
>>>>> ncl-talk mailing list
>>>>> ncl-talk at ucar.edu
>>>>> List instructions, subscriber options, unsubscribe:
>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>
>>>>>
>>>>>
>>>>> Guido Cioni
>>>>> http://guidocioni.altervista.org
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> ncl-talk mailing list
>>>>> ncl-talk at ucar.edu
>>>>> List instructions, subscriber options, unsubscribe:
>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> *Md. Jalal Uddin*
>>> MSc in Applied Meteorology (English Language)
>>> Nanjing University of Information, Science and Technology, China
>>> Jasmine Jiangsu Government Scholar
>>> Cell: +8613260859092
>>> Office: Beichen Building, School of Geography and Remote Sensing, Room
>>> No. 406
>>>
>>> *AND *
>>> B.Sc. in Disaster Management (Hons.)
>>> Patuakhali Science and Technology University, Bangladesh.
>>> Cell: +8801792052662, +8801838613203
>>> Email: dmjalal90 at gmail.com
>>> Web: www.dmjalal90.weebly.com
>>> Facebook: jalal.hossen.39
>>> LinkedIn: https://bd.linkedin.com/in/md-jalal-uddin-80a026b0
>>> Twitter: dmjalal90
>>> Skype: dmjalal90
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> ncl-talk at ucar.edu
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>
>
>
> --
> *Md. Jalal Uddin*
> MSc in Applied Meteorology (English Language)
> Nanjing University of Information, Science and Technology, China
> Jasmine Jiangsu Government Scholar
> Cell: +8613260859092
> Office: Beichen Building, School of Geography and Remote Sensing, Room No.
> 406
>
> *AND *
> B.Sc. in Disaster Management (Hons.)
> Patuakhali Science and Technology University, Bangladesh.
> Cell: +8801792052662, +8801838613203
> Email: dmjalal90 at gmail.com
> Web: www.dmjalal90.weebly.com
> Facebook: jalal.hossen.39
> LinkedIn: https://bd.linkedin.com/in/md-jalal-uddin-80a026b0
> Twitter: dmjalal90
> Skype: dmjalal90
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20180424/eb7b0b14/attachment.html>


More information about the ncl-talk mailing list