Skip to content

Commit 1ed5c9f

Browse files
committed
Fix formatter reset when twin{x,y}() is called
1 parent 3419eb8 commit 1ed5c9f

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

lib/matplotlib/axes.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -852,7 +852,15 @@ def cla(self):
852852
self.xaxis.minor = self._sharex.xaxis.minor
853853
x0, x1 = self._sharex.get_xlim()
854854
self.set_xlim(x0, x1, emit=False, auto=None)
855+
856+
# Save the current formatter so we don't lose it
857+
frmt = self._sharex.xaxis.get_major_formatter()
858+
859+
# This overwrites the current formatter
855860
self.xaxis.set_scale(self._sharex.xaxis.get_scale())
861+
862+
# Reset the formatter
863+
self.xaxis.set_major_formatter(frmt)
856864
else:
857865
self.xaxis.set_scale('linear')
858866

@@ -861,7 +869,15 @@ def cla(self):
861869
self.yaxis.minor = self._sharey.yaxis.minor
862870
y0, y1 = self._sharey.get_ylim()
863871
self.set_ylim(y0, y1, emit=False, auto=None)
872+
873+
# Save the current formatter so we don't lose it
874+
frmt = self._sharey.yaxis.get_major_formatter()
875+
876+
# This overwrites the current formatter
864877
self.yaxis.set_scale(self._sharey.yaxis.get_scale())
878+
879+
# Reset the formatter
880+
self.yaxis.set_major_formatter(frmt)
865881
else:
866882
self.yaxis.set_scale('linear')
867883

0 commit comments

Comments
 (0)