Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 90334ba

Browse files
committed
ENH: allow passing a scale instance to set_scale
1 parent 440af79 commit 90334ba

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

lib/matplotlib/axes/_base.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3510,7 +3510,7 @@ def set_xscale(self, value, **kwargs):
35103510
35113511
Parameters
35123512
----------
3513-
value : {"linear", "log", "symlog", "logit", ...}
3513+
value : {"linear", "log", "symlog", "logit", ...} or `.ScaleBase`
35143514
The axis scale type to apply.
35153515
35163516
**kwargs
@@ -3836,7 +3836,7 @@ def set_yscale(self, value, **kwargs):
38363836
38373837
Parameters
38383838
----------
3839-
value : {"linear", "log", "symlog", "logit", ...}
3839+
value : {"linear", "log", "symlog", "logit", ...} or `.ScaleBase`
38403840
The axis scale type to apply.
38413841
38423842
**kwargs

lib/matplotlib/axis.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -741,7 +741,10 @@ def get_scale(self):
741741
return self._scale.name
742742

743743
def _set_scale(self, value, **kwargs):
744-
self._scale = mscale.scale_factory(value, self, **kwargs)
744+
if not isinstance(value, mscale.ScaleBase):
745+
self._scale = mscale.scale_factory(value, self, **kwargs)
746+
else:
747+
self._scale = value
745748
self._scale.set_default_locators_and_formatters(self)
746749

747750
self.isDefault_majloc = True

0 commit comments

Comments
 (0)