Skip to content

Commit 0b27b70

Browse files
committed
More fixes.
1 parent 6fcf4fe commit 0b27b70

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

xarray/plot/utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,8 +266,8 @@ def _determine_cmap_params(plot_data, vmin=None, vmax=None, cmap=None,
266266
extend = _determine_extend(calc_data, vmin, vmax)
267267

268268
cmap_is_colormap = (
269-
isinstance(cmap, mpl.colors.Colormap)
270-
or isinstance(cmap, mpl.colors.LinearSegmentedColormap)
269+
isinstance(cmap, mpl.colors.LinearSegmentedColormap)
270+
or isinstance(cmap, mpl.colors.ListedColormap)
271271
)
272272

273273
if ((levels is not None or isinstance(norm, mpl.colors.BoundaryNorm))

xarray/tests/test_plot.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -539,12 +539,17 @@ def test_cmap_sequential_option(self):
539539

540540
@pytest.mark.parametrize(
541541
'cmap', [mpl.colors.LinearSegmentedColormap.from_list('name', ['r', 'g', 'b']),
542-
mpl.colors.ListedColormap(['r', 'g', 'b']),
543-
'RdBu_r'])
542+
mpl.colors.ListedColormap(['r', 'g', 'b'])])
544543
def test_do_nothing_if_provided_cmap(self, cmap):
545-
cmap_params = _determine_cmap_params(self.data, cmap=cmap)
544+
cmap_params = _determine_cmap_params(self.data, cmap=cmap, levels=7)
546545
assert cmap_params['cmap'] is cmap
547546

547+
def test_do_something_if_provided_str_cmap(self):
548+
cmap = 'RdBu_r'
549+
cmap_params = _determine_cmap_params(self.data, cmap=cmap, levels=7)
550+
assert cmap_params['cmap'] is not cmap
551+
assert isinstance(cmap_params['cmap'], mpl.colors.ListedColormap)
552+
548553
def test_cmap_sequential_explicit_option(self):
549554
with xr.set_options(cmap_sequential=mpl.cm.magma):
550555
cmap_params = _determine_cmap_params(self.data)

0 commit comments

Comments
 (0)