Follow-up to #11972, which solves a memory leak, but leaves the question of whether we can improve performance by reducing the number of transform instantiations.
It was pointed out that simply moving the cursor in an otherwise static plot is enough to cause calls to Transform.set_children, which occurs when transforms are chained or blended.
When creating composite transforms, would it work if we checked parents and returned the one that already existed and contained the two transforms? I think these are immutable, and there's already some shortcuts to avoid adding redundant IdentityTransforms.
This issue has been marked "inactive" because it has been 365 days since the last comment. If this issue is still present in recent Matplotlib releases, or the feature request is still wanted, please leave a comment and this label will be removed. If there are no updates in another 30 days, this issue will be automatically closed, but you are free to re-open or create a new issue if needed. We value issue reports, and this procedure is meant to help us resurface and prioritize issues that have not been addressed yet, not make them disappear. Thanks for your help!
I don't think it's obsolete.
I had somehow missed @QuLogic's suggestion above; it should be reasonably doable to implement (just need a lot of fiddling with weakrefs in the caches...) and even though it is not absolutely clear it will help, it does seems worth trying.
This issue has been marked "inactive" because it has been 365 days since the last comment. If this issue is still present in recent Matplotlib releases, or the feature request is still wanted, please leave a comment and this label will be removed. If there are no updates in another 30 days, this issue will be automatically closed, but you are free to re-open or create a new issue if needed. We value issue reports, and this procedure is meant to help us resurface and prioritize issues that have not been addressed yet, not make them disappear. Thanks for your help!
Activity
QuLogic commented on Sep 6, 2018
When creating composite transforms, would it work if we checked parents and returned the one that already existed and contained the two transforms? I think these are immutable, and there's already some shortcuts to avoid adding redundant IdentityTransforms.
github-actions commented on May 15, 2023
This issue has been marked "inactive" because it has been 365 days since the last comment. If this issue is still present in recent Matplotlib releases, or the feature request is still wanted, please leave a comment and this label will be removed. If there are no updates in another 30 days, this issue will be automatically closed, but you are free to re-open or create a new issue if needed. We value issue reports, and this procedure is meant to help us resurface and prioritize issues that have not been addressed yet, not make them disappear. Thanks for your help!
efiring commented on Jun 14, 2023
@anntzer You have worked on transforms quite recently; do you know whether this issue is now obsolete? If it isn't, I'm tempted to reopen it.
anntzer commented on Jun 14, 2023
I don't think it's obsolete.
I had somehow missed @QuLogic's suggestion above; it should be reasonably doable to implement (just need a lot of fiddling with weakrefs in the caches...) and even though it is not absolutely clear it will help, it does seems worth trying.
github-actions commented on Sep 23, 2024
This issue has been marked "inactive" because it has been 365 days since the last comment. If this issue is still present in recent Matplotlib releases, or the feature request is still wanted, please leave a comment and this label will be removed. If there are no updates in another 30 days, this issue will be automatically closed, but you are free to re-open or create a new issue if needed. We value issue reports, and this procedure is meant to help us resurface and prioritize issues that have not been addressed yet, not make them disappear. Thanks for your help!