Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Standardize creation of FigureManager from a given FigureCanvas class.#22925

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged

Conversation

anntzer
Copy link
Contributor

Thenew_manager classmethod may appear to belong more naturally to the
FigureManager class rather than the FigureCanvas class, but putting it
on FigureCanvas has multiple advantages:

  • One may want to create managers at times where all one has is a
    FigureCanvas instance, which may not even have a corresponding manager
    (e.g.subplot_tool).
  • A given FigureManager class can be associated with many different
    FigureCanvas classes (indeed, FigureManagerQT can manage both
    FigureCanvasQTAgg and FigureCanvasQTCairo and also the mplcairo Qt
    canvas classes), whereas we don't have multiple FigureManager classes
    for a given FigureCanvas class.

Still, put theactual logic in FigureManager.create_with_canvas and
access it via some indirection, as suggested by timhoffm (#22895).

See discussion at#18854 and#22895.

PR Summary

PR Checklist

Tests and Styling

  • Has pytest style unit tests (andpytest passes).
  • IsFlake 8 compliant (installflake8-docstrings and runflake8 --docstring-convention=all).

Documentation

  • New features are documented, with examples if plot related.
  • New features have an entry indoc/users/next_whats_new/ (follow instructions in README.rst there).
  • API changes documented indoc/api/next_api_changes/ (follow instructions in README.rst there).
  • Documentation is sphinx and numpydoc compliant (the docs shouldbuild without error).

@anntzeranntzer added this to thev3.6.0 milestoneApr 28, 2022
@anntzeranntzerforce-pushed theuniform-manager-creation-2 branch from12988c3 toad1ded4CompareApril 28, 2022 22:28
The `new_manager` classmethod may appear to belong more naturally to theFigureManager class rather than the FigureCanvas class, but putting iton FigureCanvas has multiple advantages:- One may want to create managers at times where all one has is a  FigureCanvas instance, which may not even have a corresponding manager  (e.g. `subplot_tool`).- A given FigureManager class can be associated with many different  FigureCanvas classes (indeed, FigureManagerQT can manage both  FigureCanvasQTAgg and FigureCanvasQTCairo and also the mplcairo Qt  canvas classes), whereas we don't have multiple FigureManager classes  for a given FigureCanvas class.Still, put the *actual* logic in FigureManager.create_with_canvas andaccess it via some indirection, as suggested by timhoffm.
@anntzeranntzerforce-pushed theuniform-manager-creation-2 branch fromad1ded4 tof29c3e0CompareMay 1, 2022 11:39
@timhoffmtimhoffm merged commit1ff14f1 intomatplotlib:mainMay 1, 2022
@anntzeranntzer deleted the uniform-manager-creation-2 branchMay 10, 2022 07:24
@anntzeranntzer mentioned this pull requestMay 10, 2022
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@tacaswelltacaswelltacaswell approved these changes

@timhoffmtimhoffmtimhoffm approved these changes

Assignees
No one assigned
Projects
None yet
Milestone
v3.6.0
Development

Successfully merging this pull request may close these issues.

3 participants
@anntzer@tacaswell@timhoffm

[8]ページ先頭

©2009-2025 Movatter.jp