josuemtzmo / trackeddy

Tracking eddy algorithm:
http://trackeddy.readthedocs.io/
MIT License
46 stars 18 forks source link

how to track eddies and resquest for example/demo ? #10

Open hafez-ahmad opened 3 years ago

hafez-ahmad commented 3 years ago

I have already open two issues. I like to request demos on how to track eddies .would you add an example like basemap_mplot for positive and negative plots ? please. I have daily dataset from copernicus

I have tried but I am getting error scan_eddym(sla,lon,lat,levels,0,areamap,maskopt='contour', preferences=None,plotdata=False)

TypeError Traceback (most recent call last)

in ----> 1 scan_eddym(sla,lon,lat,levels,0,areamap,maskopt='contour', preferences=None,plotdata=False) c:\users\hafez\miniconda3\lib\site-packages\trackeddy-0.1-py3.8.egg\trackeddy\tracking.py in scan_eddym(data, lon, lat, levels, date, areamap, mask, destdir, physics, eddycenter, maskopt, preferences, mode, basemap, checkgauss, areaparms, usefullfit, diagnostics, plotdata, debug) 124 # Plot contours according to the data. 125 if len(shapedata) == 3: --> 126 CS = plt.contourf(Lon[areamap[1, 0]:areamap[1, 1], areamap[0, 0]:areamap[0, 1]], \ 127 Lat[areamap[1, 0]:areamap[1, 1], areamap[0, 0]:areamap[0, 1]], \ 128 datanan[date, areamap[1, 0]:areamap[1, 1], areamap[0, 0]:areamap[0, 1]], \ c:\users\hafez\miniconda3\lib\site-packages\matplotlib\pyplot.py in contourf(data, *args, **kwargs) 2558 @_copy_docstring_and_deprecators(Axes.contourf) 2559 def contourf(*args, data=None, **kwargs): -> 2560 __ret = gca().contourf( 2561 *args, **({"data": data} if data is not None else {}), 2562 **kwargs) c:\users\hafez\miniconda3\lib\site-packages\matplotlib\__init__.py in inner(ax, data, *args, **kwargs) 1429 def inner(ax, *args, data=None, **kwargs): 1430 if data is None: -> 1431 return func(ax, *map(sanitize_sequence, args), **kwargs) 1432 1433 bound = new_sig.bind(ax, *args, **kwargs) c:\users\hafez\miniconda3\lib\site-packages\matplotlib\axes\_axes.py in contourf(self, *args, **kwargs) 6317 def contourf(self, *args, **kwargs): 6318 kwargs['filled'] = True -> 6319 contours = mcontour.QuadContourSet(self, *args, **kwargs) 6320 self._request_autoscale_view() 6321 return contours c:\users\hafez\miniconda3\lib\site-packages\matplotlib\contour.py in __init__(self, ax, levels, filled, linewidths, linestyles, hatches, alpha, origin, extent, cmap, colors, norm, vmin, vmax, extend, antialiased, nchunk, locator, transform, *args, **kwargs) 814 self._transform = transform 815 --> 816 kwargs = self._process_args(*args, **kwargs) 817 self._process_levels() 818 c:\users\hafez\miniconda3\lib\site-packages\matplotlib\contour.py in _process_args(self, corner_mask, *args, **kwargs) 1428 self._corner_mask = corner_mask 1429 -> 1430 x, y, z = self._contour_args(args, kwargs) 1431 1432 _mask = ma.getmask(z) c:\users\hafez\miniconda3\lib\site-packages\matplotlib\contour.py in _contour_args(self, args, kwargs) 1499 'masked') 1500 self.zmin = float(z.min()) -> 1501 self._process_contour_level_args(args) 1502 return (x, y, z) 1503 c:\users\hafez\miniconda3\lib\site-packages\matplotlib\contour.py in _process_contour_level_args(self, args) 1156 self.levels = self._autolev(levels_arg) 1157 else: -> 1158 self.levels = np.asarray(levels_arg).astype(np.float64) 1159 1160 if not self.filled: TypeError: float() argument must be a string or a number, not 'dict'