From 7fb75e06f8d8c11a388836d186078d77a578417b Mon Sep 17 00:00:00 2001 From: Jody Klymak Date: Mon, 3 Oct 2022 18:18:11 -0700 Subject: [PATCH] MNT: make orphaned colorbar depreacte versus raise --- lib/matplotlib/figure.py | 6 ++++-- lib/matplotlib/tests/test_colorbar.py | 5 ++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/figure.py b/lib/matplotlib/figure.py index 4aebc1696543..1636e201019b 100644 --- a/lib/matplotlib/figure.py +++ b/lib/matplotlib/figure.py @@ -1253,11 +1253,13 @@ def colorbar( # Store the value of gca so that we can set it back later on. if cax is None: if ax is None: - raise ValueError( + _api.warn_deprecated("3.6", message=( 'Unable to determine Axes to steal space for Colorbar. ' + 'Using gca(), but will raise in the future. ' 'Either provide the *cax* argument to use as the Axes for ' 'the Colorbar, provide the *ax* argument to steal space ' - 'from it, or add *mappable* to an Axes.') + 'from it, or add *mappable* to an Axes.')) + ax = self.gca() current_ax = self.gca() userax = False if (use_gridspec and isinstance(ax, SubplotBase)): diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py index 149ed4c3d22e..31097c12f061 100644 --- a/lib/matplotlib/tests/test_colorbar.py +++ b/lib/matplotlib/tests/test_colorbar.py @@ -1,10 +1,12 @@ import numpy as np import pytest +from matplotlib import _api from matplotlib import cm import matplotlib.colors as mcolors import matplotlib as mpl + from matplotlib import rc_context from matplotlib.testing.decorators import image_comparison import matplotlib.pyplot as plt @@ -319,7 +321,8 @@ def test_parentless_mappable(): pc = mpl.collections.PatchCollection([], cmap=plt.get_cmap('viridis')) pc.set_array([]) - with pytest.raises(ValueError, match='Unable to determine Axes to steal'): + with pytest.warns(_api.MatplotlibDeprecationWarning, + match='Unable to determine Axes to steal'): plt.colorbar(pc) pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy