Don't change Figure DPI if value unchanged #16971
Closed
Add this suggestion to a batch that can be applied as a single commit.
3110
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.
So while digging into #15131, I noticed a change in how much we call resize. Here is the sample code I'm running:
When I run that 3.2.1, I see the following set of print outs of calls of various resize-related methods:
That looks reasonable. This is what the same code does on current master:
It looks like this change came in #16828. Prevously when
Text.get_window_extent
got a DPI ofNone
, the function did not setfigure.dpi
. Now:matplotlib/lib/matplotlib/text.py
Lines 894 to 913 in e702edd
If DPI comes in as
None
, the current DPI is grabbed and then reset onFigure
. The change I've implemented here is to make settingFigure.dpi
a no-op if the value isn't different. This gets us back to: