Skip to content
/ ipyelk Public

Jupyter Widgets for interactive graphs powered by the Eclipse Layout Kernel (ELK)

License

Notifications You must be signed in to change notification settings

jupyrdf/ipyelk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ipyelk

Jupyter Widgets for interactive graphs powered by the Eclipse Layout Kernel (ELK).

Install Build Docs
npm-badge
pypi-badge
conda-badge
ci-badge
Examples
CHANGELOG
CONTRIBUTING

Screenshots

what can you do... ... with ipyelk
automatically lay out complex, nested data as diagrams a screenshot of a complex graph
interactive activity/flow-chart diagrams a screencast of a flowchart with collapsible regions
collapsible blocks a screencast of a class diagram with collapsible regions
visual simulations a screencast of an interactive logic gate simulation
embed other widgets in diagrams a screencast of displaying bar and scatter plots in a flowchart
interact with dynamic systems a screencast of a predator/prey system with plots over time

Prerequisites

  • python >=3.9

JupyterLab compatibility

jupyterlab ipyelk special concerns
==1.* >1 needs nodejs >10
jupyter labextension install @jupyrdf/jupyter-elk
backports, etc. land on the 0.3.x branch
==2.* >1 untested
==3.* >=1,<2.1
>=4.1,<5 >=2.1

Install

ipyelk is distributed on conda-forge and PyPI.

ipyelk with conda (recommended)

conda install -c conda-forge ipyelk "jupyterlab=4.*"
# or
mamba install -c conda-forge ipyelk "jupyterlab=4.*"

ipyelk with pip

pip install ipyelk "jupyterlab=4.*"

Developing

See CONTRIBUTING for a development install.

How it works

In your kernel, ipyelk:

In your jupyter_server:

In the browser, @jupyrdf/jupyter-elk:

  • ELK lays out the diagram in a WebWorker
  • sprotty draws the diagram as SVG
  • interaction information (like selection and hovering) are passed back to the browser

Uninstall

pip uninstall ipyelk

Open Source

This work is licensed under the BSD-3-Clause License. It contains pieces derived from other works.