Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork8.2k
FIX: do not replace the Axes._children list object#24677
Merged
ksunden merged 1 commit intomatplotlib:mainfromDec 9, 2022
Merged
FIX: do not replace the Axes._children list object#24677ksunden merged 1 commit intomatplotlib:mainfrom
ksunden merged 1 commit intomatplotlib:mainfrom
Conversation
Each Artist keeps a reference to `Axes._children.remove` as`art._remove_method`. If we replace the `_children` instance on the Axes witha different list instance the Artists will not be updated and their removemethod will refer to the wrong list. This will cause subsequent failures onthe next draw because on remove we reset the `art.axes` and `art.figure` toNone.xrefhttps://discourse.matplotlib.org/t/host-subplot-and-artist-remove/23374
anntzer approved these changesDec 9, 2022
ksunden approved these changesDec 9, 2022
Owee, I'm MrMeeseeks, Look at me. There seem to be a conflict, please backport manually. Here are approximate instructions:
And apply the correct labels and milestones. Congratulations — you did some good work! Hopefully your backport PR will be tested by the continuous integration and merged soon! Remember to remove the If these instructions are inaccurate, feel free tosuggest an improvement. |
rcomer pushed a commit to rcomer/matplotlib that referenced this pull requestDec 9, 2022
…list objectManual backport due to conflicts, which were just additional tests inmain frommatplotlib#23861, so simply removed these.
Merged
6 tasks
tacaswell added a commit that referenced this pull requestDec 9, 2022
Backport PR#24677 on branch v3.6.x (FIX: do not replace the Axes._children list object)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Summary
Each Artist keeps a reference to
Axes._children.removeasart._remove_method. If we replace the_childreninstance on the Axes with a different list instance the Artists will not be updated and their remove method will refer to the wrong list. This will cause subsequent failures on the next draw because on remove we reset theart.axesandart.figureto None.xrefhttps://discourse.matplotlib.org/t/host-subplot-and-artist-remove/23374
PR Checklist
Documentation and Tests
pytestpasses)