You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
$ python3 redraw_test.py
Traceback (most recent call last):
File "redraw_test.py", line 7, in <module>
ax.redraw_in_frame()
File "/home/stephen.sinclair/.local/lib/python3.6/site-packages/matplotlib/axes/_base.py", line 2777, in redraw_in_frame
stack.push(artist.set_visible, artist.get_visible())
TypeError: push() takes 2 positional arguments but 3 were given
Tested only in Python 3.6 and Python 3.7, but according to docs, the API for contextlib.ExitStack.push has not changed with Python 3.8, so error should be the same.
Expected outcome
Function redraw_in_frame gives no error.
Matplotlib version
Code worked with matplotlib 3.2.1, but broken in 3.3.2.
Operating system: Ubuntu 18.04
Matplotlib version: 3.3.2
Matplotlib backend: TkAgg, Agg.
Python version: 3.6, 3.7.
Jupyter version (if applicable): n/a
Other libraries: n/a
Installed via pip3.
The text was updated successfully, but these errors were encountered:
diff --git i/lib/matplotlib/axes/_base.py w/lib/matplotlib/axes/_base.py
index 40a4af463..4832a2900 100644
--- i/lib/matplotlib/axes/_base.py+++ w/lib/matplotlib/axes/_base.py@@ -2828,7 +2828,7 @@ class _AxesBase(martist.Artist):
with ExitStack() as stack:
for artist in [*self._get_axis_list(),
self.title, self._left_title, self._right_title]:
- stack.push(artist.set_visible, artist.get_visible())+ stack.callback(artist.set_visible, artist.get_visible())
artist.set_visible(False)
self.draw(self.figure._cachedRenderer)
Bug report
Code that was working in 3.2.1 uses
redraw_in_frame
, now broken in 3.3.0 and 3.3.2, even though this API has not changed.Bug summary
Use of
Axes.redraw_in_frame
leads to an error calling functionExitStack.push()
.Code for reproduction
Can be reproduced by running this small program,
Actual outcome
results in,
Tested only in Python 3.6 and Python 3.7, but according to docs, the API for contextlib.ExitStack.push has not changed with Python 3.8, so error should be the same.
Expected outcome
Function
redraw_in_frame
gives no error.Matplotlib version
Code worked with matplotlib 3.2.1, but broken in 3.3.2.
Installed via pip3.
The text was updated successfully, but these errors were encountered: