diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 57fd7551..558442e5 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -19,6 +19,8 @@ Fixed Added ^^^^^ +- Add display grid for unregular grid + [3.6.0] - 2022-01-12 -------------------- diff --git a/requirements.txt b/requirements.txt index 477cf32d..55aaca56 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ matplotlib netCDF4 numba>=0.53 -numpy<1.21 +numpy<1.22 opencv-python pint polygon3 diff --git a/src/py_eddy_tracker/dataset/grid.py b/src/py_eddy_tracker/dataset/grid.py index 797e0482..e0ce903e 100644 --- a/src/py_eddy_tracker/dataset/grid.py +++ b/src/py_eddy_tracker/dataset/grid.py @@ -1074,6 +1074,20 @@ def load(self): self.init_pos_interpolator() + def display(self, ax, name, factor=1, **kwargs): + """ + :param matplotlib.axes.Axes ax: matplotlib axes used to draw + :param str,array name: variable to display, could be an array + :param float factor: multiply grid by + :param dict kwargs: look at :py:meth:`matplotlib.axes.Axes.pcolor` + + .. minigallery:: py_eddy_tracker.UnRegularGridDataset.display + """ + if "cmap" not in kwargs: + kwargs["cmap"] = "coolwarm" + data = self.grid(name) if isinstance(name, str) else name + return ax.pcolor(self.x_c, self.y_c, data * factor, **kwargs) + @property def bounds(self): """Give bounds"""