#30540 closed enhancement (fixed)
Add package phitigra: Graph editor that works with Jupyter
Reported by: | slelievre | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-9.6 |
Component: | user interface | Keywords: | graph_editor |
Cc: | boothby, jason, mpatel, nthiery, nvcleemp, rbeezer, rkirov, rlm, slelievre, was, zerline, gh-jcamp0x2a, gh-jfraymond, dimpase, dcoudert | Merged in: | |
Authors: | Matthias Koeppe | Reviewers: | David Coudert |
Report Upstream: | N/A | Work issues: | |
Branch: | aca5732 (Commits, GitHub, GitLab) | Commit: | |
Dependencies: | Stopgaps: |
Description (last modified by )
This ticket is about providing the graph editor https://pypi.org/project/phitigra, which works in Jupyter (Jupyter Notebook and JupyterLab).
This is part of
- #29889: Metaticket: Jupyter improvements for things that were in sagenb
Related:
Change History (21)
comment:1 Changed 22 months ago by
comment:2 Changed 22 months ago by
- Description modified (diff)
And if I forgot someone who wanted to be cc-ed, it's easy: just cc yourself.
comment:3 Changed 22 months ago by
Candidates could be francy, bqplot, networkx+matplotlib. A promising one:
https://blog.jupyter.org/interactive-graph-visualization-in-jupyter-with-ipycytoscape-a8828a54ab63
comment:4 follow-up: ↓ 5 Changed 22 months ago by
Some nice features would be:
- ability to disable any automatic layouting: not as annoying as an editor that keeps moving vertices while you're trying to construct a complicated graph
- ability to have a layout-only mode: if you have a graph, you might want to change the layout without accidentally changing the graph structure
Probably some more, but these are the first two I could think of.
comment:5 in reply to: ↑ 4 Changed 22 months ago by
Replying to nvcleemp:
Some nice features would be:
- ability to disable any automatic layouting: not as annoying as an editor that keeps moving vertices while you're trying to construct a complicated graph
- ability to have a layout-only mode: if you have a graph, you might want to change the layout without accidentally changing the graph structure
Probably some more, but these are the first two I could think of.
The "CS academy" graph editor (not sure about the license -- I'm asking them) has those features. There's a button "Force" to let some force reshape the graph, and buttons "Draw", "Edit", "Delete", "Config" that stop the movement to let the user edit the graph. There's also a text column on the left where one can manually edit the graph vertices and edges.
comment:6 Changed 22 months ago by
- Cc gh-jcamp0x2a added
comment:7 Changed 21 months ago by
- Description modified (diff)
comment:8 Changed 20 months ago by
- Milestone changed from sage-9.2 to sage-9.3
comment:9 Changed 17 months ago by
- Milestone changed from sage-9.3 to sage-9.4
Setting new milestone based on a cursory review of ticket status, priority, and last modification date.
comment:10 Changed 16 months ago by
- Cc gh-jfraymond added
Hello,
I just see this ticket. Last year I started to (occasionally) develop a graph editor for sage using ipycanvas and ipywidgets, that can be found in the following repository: https://gitlab.limos.fr/jfraymon/phitigra
It is not completely finished (and the code could/will be improved) but it is functional: one can draw a graph and export it, zoom in/out, change vertex colors, use layout algorithms, etc.
I did not make a ticket here to include it in sage because it depends on external libraries (ipycanvas and ipywidgets) and I thought it would be annoying to review (also it is still work in progress).
comment:11 Changed 12 months ago by
- Milestone changed from sage-9.4 to sage-9.5
comment:12 Changed 7 months ago by
- Milestone changed from sage-9.5 to sage-9.6
comment:13 Changed 3 months ago by
- Branch set to u/mkoeppe/provide_graph_editor_that_works_with_jupyter
comment:14 Changed 3 months ago by
- Commit set to aca5732e15bb72eb829913b89475ed68e83ba267
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
aca5732 | build/pkgs/phitigra: New
|
comment:15 Changed 3 months ago by
- Description modified (diff)
- Status changed from new to needs_review
- Summary changed from Provide graph editor that works with Jupyter to Add package phitigra: Graph editor that works with Jupyter
comment:16 Changed 3 months ago by
- Cc dimpase dcoudert added
comment:17 Changed 3 months ago by
- Reviewers set to David Coudert
- Status changed from needs_review to positive_review
I tried to install phitigra
and it works well with jupyter on safari/macOS 12.12.1. Quite easy to use to edit basic graphs.
comment:18 Changed 3 months ago by
Thanks!
comment:19 Changed 3 months ago by
- Branch changed from u/mkoeppe/provide_graph_editor_that_works_with_jupyter to aca5732e15bb72eb829913b89475ed68e83ba267
- Resolution set to fixed
- Status changed from positive_review to closed
comment:20 Changed 3 months ago by
- Commit aca5732e15bb72eb829913b89475ed68e83ba267 deleted
Follow-up: #33639 Replace sage.graphs.graph_editor
with a call to phitigra
comment:21 Changed 3 months ago by
Great, thank you for this addition! I'm glad to see there is interest for my graph editor.
I cc-ed a lot of people who have had historical involvement with this topic.
If you mind, email me to un-cc you (un-cc-ing yourself would have the opposite effect of subscribing you forever to updates on this ticket).