FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Fix nonsensical transform in mixed-mode axes aspect computation. by anntzer · Pull Request #14990 · matplotlib/matplotlib · GitHub

Repository navigation

Fix nonsensical transform in mixed-mode axes aspect computation. - #14990

Merged
timhoffm merged 2 commits into
matplotlib:masterfrom
anntzer:mixedscaleaspect
Aug 7, 2019
Merged

timhoffm merged 2 commits into
matplotlib:masterfrom
anntzer:mixedscaleaspect

Conversation

anntzer commented Aug 6, 2019 •
edited
Loading

Copy link
Copy Markdown
Contributor

PR Summary

The first commit fixes the nonsensical transform mentioned in #14899, while changing the test introduced in #14727 to match the behavior of autoscale which we decided in #14899 to keep at least for now (as refactoring it is going to require more work).

The second commit fixes the fact that I missed, in #14727, that I could just write trf.transform(array) rather than map(trf.transform, array), i.e. Transform.transform works on arrays (and is documented to do so).

attn @efiring

PR Checklist

  • Has Pytest style unit tests
  • Code is Flake 8 compliant
  • New features are documented, with examples if plot related
  • Documentation is sphinx and numpydoc compliant
  • Added an entry to doc/users/next_whats_new/ if major new feature (follow instructions in README.rst there)
  • Documented in doc/api/api_changes.rst if API changed in a backward-incompatible way

anntzer added the Release critical For bugs that make the library unusable (segfaults, incorrect plots, etc) and major regressions. label Aug 6, 2019
anntzer added this to the v3.2.0 milestone Aug 6, 2019

efiring left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

You might want to either remove the comment in the test, or modify the test so that it tests the zoomed-in case where the requested view limits are within larger data limits. This need not block the PR, though.

Comment thread lib/matplotlib/tests/test_axes.py Outdated
ax.apply_aspect()
assert ax.get_xlim() == pytest.approx(np.array([1/10, 10]) * np.sqrt(10))
# Currently the autoscaler chooses to reduce the x-limits by half a decade
# on each end, but this may change later.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I don't know why it would, unless the test itself is changed. I think the point of confusion is that in this test you are plotting only one point, so apply_aspect is understandably and correctly shrinking an axis instead of expanding one. xlim and ylim pertain to view limits, not data limits. It looks like I made a big mistake, long ago, in calling the adjustable option "datalim", because it is not actually adjusting data limits--they remain determined by the actual plot calls and Artist additions--but rather, view limits. Maybe we should change the option name (with deprecation, in a separate PR) to "viewlim" or "viewlimits"?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I just removed the comment and let's punt the discussion of what the ideal behavior should be to, well, not this PR :)

timhoffm merged commit d95e3f8 into matplotlib:master Aug 7, 2019
anntzer deleted the mixedscaleaspect branch August 7, 2019 19:14
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 free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Release critical For bugs that make the library unusable (segfaults, incorrect plots, etc) and major regressions.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants


Back | FazBrowse Home | New Git URL