@@ -1022,40 +1022,27 @@ def set_default_intervals(self):
10221022 # attribute, and the derived code below will check for that
10231023 # and use it if it's available (else just use 0..1)
10241024
1025- def _set_lim (self , v0 , v1 , alt0 = None , alt1 = None , * ,
1026- emit = True , auto , names = ("" , "" )):
1025+ def _set_lim (self , v0 , v1 , * , emit = True , auto ):
10271026 """
10281027 Set view limits.
10291028
10301029 This method is a helper for the Axes ``set_xlim``, ``set_ylim``, and
1031- ``set_zlim`` methods. This docstring uses names corresponding to
1032- ``set_xlim`` for simplicity.
1030+ ``set_zlim`` methods.
10331031
1034- *names* is the pair of the names of the first two parameters of the
1035- Axes method (e.g., "left" and "right"). They are only used to generate
1036- error messages; and can be empty if the limits are known to be valid.
1037-
1038- Other parameters are directly forwarded from the Axes limits setter:
1039- *v0*, *v1*, *alt0*, and *alt1* map to *left*, *right*, *xmin*, and
1040- *xmax* respectively; *emit* and *auto* are used as is.
1032+ Parameters
1033+ ----------
1034+ v0, v1 : float
1035+ The view limits. (Passing *v0* as a (low, high) pair is not
1036+ supported; normalization must occur in the Axes setters.)
1037+ emit : bool, default: True
1038+ Whether to notify observers of limit change.
1039+ auto : bool or None, default: False
1040+ Whether to turn on autoscaling of the x-axis. True turns on, False
1041+ turns off, None leaves unchanged.
10411042 """
1042- v0name , v1name = names # The value names.
10431043 name , = [name for name , axis in self .axes ._get_axis_map ().items ()
10441044 if axis is self ] # The axis name.
10451045
1046- if v1 is None and np .iterable (v0 ):
1047- v0 , v1 = v0
1048- if alt0 is not None :
1049- if v0 is not None :
1050- raise TypeError (
1051- f"Cannot pass both { v0name !r} and '{ name } lim'" )
1052- v0 = alt0
1053- if alt1 is not None :
1054- if v1 is not None :
1055- raise TypeError (
1056- f"Cannot pass both { v1name !r} and '{ name } lim'" )
1057- v1 = alt1
1058-
10591046 self .axes ._process_unit_info ([(name , (v0 , v1 ))], convert = False )
10601047 v0 = self .axes ._validate_converted_limits (v0 , self .convert_units )
10611048 v1 = self .axes ._validate_converted_limits (v1 , self .convert_units )
@@ -1074,23 +1061,20 @@ def _set_lim(self, v0, v1, alt0=None, alt1=None, *,
10741061 # so only grab the limits if we really need them.
10751062 old0 , old1 = self .get_view_interval ()
10761063 if v0 <= 0 :
1077- _api .warn_external (
1078- f"Attempt to set non-positive { v0name } { name } lim on a "
1079- f"log-scaled axis will be ignored." )
1064+ _api .warn_external (f"Attempt to set non-positive { name } lim on "
1065+ f"a log-scaled axis will be ignored." )
10801066 v0 = old0
10811067 if v1 <= 0 :
1082- _api .warn_external (
1083- f"Attempt to set non-positive { v1name } { name } lim on a "
1084- f"log-scaled axis will be ignored." )
1068+ _api .warn_external (f"Attempt to set non-positive { name } lim on "
1069+ f"a log-scaled axis will be ignored." )
10851070 v1 = old1
10861071 if v0 == v1 :
10871072 _api .warn_external (
1088- f"Attempting to set identical { v0name } == { v1name } == { v0 } "
1073+ f"Attempting to set identical low and high { name } lims "
10891074 f"makes transformation singular; automatically expanding." )
1090- reverse = v0 > v1
1075+ reverse = bool ( v0 > v1 ) # explicit cast needed for python3.8+np.bool_.
10911076 v0 , v1 = self .get_major_locator ().nonsingular (v0 , v1 )
10921077 v0 , v1 = self .limit_range_for_scale (v0 , v1 )
1093- # cast to bool to avoid bad interaction between python 3.8 and np.bool_
10941078 v0 , v1 = sorted ([v0 , v1 ], reverse = bool (reverse ))
10951079
10961080 self .set_view_interval (v0 , v1 , ignore = True )
@@ -1106,7 +1090,7 @@ def _set_lim(self, v0, v1, alt0=None, alt1=None, *,
11061090 for other in self .axes ._shared_axes [name ].get_siblings (self .axes ):
11071091 if other is not self .axes :
11081092 other ._get_axis_map ()[name ]._set_lim (
1109- v0 , v1 , emit = False , auto = auto , names = names )
1093+ v0 , v1 , emit = False , auto = auto )
11101094 if other .figure != self .figure :
11111095 other .figure .canvas .draw_idle ()
11121096
0 commit comments