diff --git a/lib/matplotlib/axes/_base.py b/lib/matplotlib/axes/_base.py index 28c4c9caa8fd..1f8e40e28e31 100644 --- a/lib/matplotlib/axes/_base.py +++ b/lib/matplotlib/axes/_base.py @@ -3082,7 +3082,7 @@ def set_xbound(self, lower=None, upper=None): Set the lower and upper numerical bounds of the x-axis. This method will honor axes inversion regardless of parameter order. - It will not change the autoscaling setting (``Axes._autoscaleXon``). + It will not change the autoscaling setting (`.get_autoscalex_on()`). Parameters ---------- @@ -3100,22 +3100,13 @@ def set_xbound(self, lower=None, upper=None): lower, upper = lower old_lower, old_upper = self.get_xbound() - if lower is None: lower = old_lower if upper is None: upper = old_upper - if self.xaxis_inverted(): - if lower < upper: - self.set_xlim(upper, lower, auto=None) - else: - self.set_xlim(lower, upper, auto=None) - else: - if lower < upper: - self.set_xlim(lower, upper, auto=None) - else: - self.set_xlim(upper, lower, auto=None) + self.set_xlim(sorted((lower, upper), reverse=self.xaxis_inverted()), + auto=None) def get_xlim(self): """ @@ -3480,7 +3471,7 @@ def set_ybound(self, lower=None, upper=None): Set the lower and upper numerical bounds of the y-axis. This method will honor axes inversion regardless of parameter order. - It will not change the autoscaling setting (``Axes._autoscaleYon``). + It will not change the autoscaling setting (`.get_autoscaley_on()`). Parameters ---------- @@ -3498,22 +3489,13 @@ def set_ybound(self, lower=None, upper=None): lower, upper = lower old_lower, old_upper = self.get_ybound() - if lower is None: lower = old_lower if upper is None: upper = old_upper - if self.yaxis_inverted(): - if lower < upper: - self.set_ylim(upper, lower, auto=None) - else: - self.set_ylim(lower, upper, auto=None) - else: - if lower < upper: - self.set_ylim(lower, upper, auto=None) - else: - self.set_ylim(upper, lower, auto=None) + self.set_ylim(sorted((lower, upper), reverse=self.yaxis_inverted()), + auto=None) def get_ylim(self): """ diff --git a/lib/mpl_toolkits/mplot3d/axes3d.py b/lib/mpl_toolkits/mplot3d/axes3d.py index 624d46f003ae..d258a6feb4dd 100644 --- a/lib/mpl_toolkits/mplot3d/axes3d.py +++ b/lib/mpl_toolkits/mplot3d/axes3d.py @@ -1464,30 +1464,24 @@ def get_zbound(self): def set_zbound(self, lower=None, upper=None): """ Set the lower and upper numerical bounds of the z-axis. + This method will honor axes inversion regardless of parameter order. - It will not change the :attr:`_autoscaleZon` attribute. + It will not change the autoscaling setting (`.get_autoscalez_on()`). .. versionadded :: 1.1.0 This function was added, but not tested. Please report any bugs. """ if upper is None and np.iterable(lower): lower, upper = lower + old_lower, old_upper = self.get_zbound() if lower is None: lower = old_lower if upper is None: upper = old_upper - if self.zaxis_inverted(): - if lower < upper: - self.set_zlim(upper, lower, auto=None) - else: - self.set_zlim(lower, upper, auto=None) - else: - if lower < upper: - self.set_zlim(lower, upper, auto=None) - else: - self.set_zlim(upper, lower, auto=None) + self.set_zlim(sorted((lower, upper), reverse=self.zaxis_inverted()), + auto=None) def text(self, x, y, z, s, zdir=None, **kwargs): ''' 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