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

Feature request: Add advanced zoom and inspect feature to GUI for more productivity · Issue #17658 · matplotlib/matplotlib · GitHub

Repository navigation

Feature request: Add advanced zoom and inspect feature to GUI for more productivity #17658

Closed

Description

Feature request

I would like to add more features to the default GUI. Advanced zooming that gives you more control on how to zoom. And an "object inspector" that allows to manipulate the plot. Both would allow to play more with the plots and increase productivity by helping you to get what you would like to see faster.

  1. For zooming we have a box only, that means for example if I want to zoom on vertical axis only it is not possible without changing the horizonal axis too. Even if I try to include the whole horizontal axis I will always cut a bit (on the left and on the right side) and thus change the part visible. If I have to zoom multiple times that gets worse for every step. I would like to propose a horizontal and vertical zooming mode that zooms on a bar instead of a box. That means when e.g. selecting the vertical zoom mode the mouse movement spans two horizontal lines (instead of a box) and only the vertical distance of these can be changed, ther horizontal movement of the mouse is not relevant. Thes same for a horizontal zoom mode. Software that has that feature is e.g. LabVIEW.

  2. For assembling the plot I would like to have an object inspector (separate window) that shows you the tree of objects and classes that make the plot. Having furthermore the possibility to manipulate this tree, e.g. add a grid, change colors, removing and adding lines, legend, etc. Software that has a similar feature is e.g. MayaVi and it's pipeline. So for example for a very simple plot of a line you would e.g. get:

Figure
 +--- Axes
       +--- Line

(in the line is also the data object, that could e.g. be re-used for adding more lines)

It is a bit hard to describe but I hope the description is understandable. If not, I would be happy to add more information or answer questions - please ask!

Activity

  1. timhoffm commented on Jun 17, 2020

    Member

    Vertical/horizontal zoom modes sound reasonable. That should be implemented via ctrl/shift/alt keys.

    Re: object inspector
    Core Matplotlib prioritizes code-based plot generation. A full GUI for manipulating the plot is beyond the scope of the project. Check out https://pylustrator.readthedocs.io/en/latest/ for a GUI.

    Technical note: Please do not put multiple unrelated requests in one ticket. That makes the discussions harder to follow.

  2. anntzer commented on Jun 17, 2020

    Contributor
  3. drtrigon commented on Jun 19, 2020

    Author

    Vertical/horizontal zoom modes: Tested it and it works exactly as expected - that's great news, thanks! However what about having a drop down menu when clicking on the zoom button in order to select? Or at least some hint on how to use keys. I use matplotlib for years now and was not aware of that - very handy - feature.

    Object inspector: Thanks for the hint - pylustrator looks very interesting and could be exactly what I was looking for - will give it a try!

    Technical note: I just wanted to get the discussion rolling and did not want to open multiple issues for that - sorry. Shall I - for documentation - split this issue up in two? Or is it fine for now? (will open multiple issues next time... ;)

  4. anntzer commented on Jun 19, 2020

    Contributor

    See #17687 for better doc. I think this can be tracked here.
    It's a bit easier if each issue is self-contained but no need to overly worry about it either.

  5. tacaswell commented on Jun 19, 2020

    Member

    We should also pull a version of mouse-wheel zooming into the core library (ex https://gist.github.com/tacaswell/3144287)

  6. added this to the v3.3.0 milestone on Jun 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions


      Back | FazBrowse Home | New Git URL