Skip to content

hugs314/ipycytoscape

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ipycytoscape

Build StatusJoin the chat at https://gitter.im/QuantStack/Lobby

A widget enabling interactive graph visualization with cytoscape.js in JupyterLab and the Jupyter notebook.

Try it out using binder: Binder or install and try out the examples.

cytoscape screencast

Supports:

Installation

With mamba:

mamba install -c conda-forge ipycytoscape

With conda:

conda install -c conda-forge ipycytoscape

With pip:

pip install ipycytoscape

For jupyterlab users:

There is an aditional step if you're using JupyterLab:

jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-cytoscape

If you are using Jupyter Notebook 5.2 or earlier, you may also need to enable the nbextension:

jupyter nbextension enable --py [--sys-prefix|--user|--system] ipycytoscape

For a development installation:

(requires npm)

While not required, we recommend creating a conda environment to work in:

conda create -n ipycytoscape -c conda-forge jupyterlab nodejs
conda activate ipycytoscape

# clone repo
git clone https://github.com/QuantStack/ipycytoscape.git
cd ipycytoscape

# Install python package for development, runs npm install and npm run build
pip install -e .

When developing ipycytoscape, you need to manually enable the extension with the notebook / lab frontend. For lab, this is done by the command:

# install jupyterlab-manager and this extension
jupyter labextension install @jupyter-widgets/jupyterlab-manager --no-build
jupyter labextension install .

For classic notebook, you can run:

jupyter nbextension install --sys-prefix --symlink --overwrite --py ipycytoscape
jupyter nbextension enable --sys-prefix --py ipycytoscape

Note that the --symlink flag doesn't work on Windows, so you will here have to run the install command every time that you rebuild your extension. For certain installations you might also need another flag instead of --sys-prefix, but we won't cover the meaning of those flags here.

How to see your changes

Typescript:

To continuously monitor the project for changes and automatically trigger a rebuild, start Jupyter in watch mode:

jupyter lab --watch

And in a separate session, begin watching the source directory for changes:

npm run watch

Python:

If you make a change to the python code then you need to restart the notebook kernel to have it take effect.

How to run tests locally

Install necessary dependencies with pip:

pip install -e .[test]

Or with mamba:

mamba -c conda-forge install networkx pandas matplotlib nbval pytest

Or with conda:

conda -c conda-forge install networkx pandas matplotlib nbval pytest

And to run it:

pytest

License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the LICENSE file for details.

About

A Cytoscape Jupyter widget

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 73.7%
  • TypeScript 21.6%
  • JavaScript 4.6%
  • CSS 0.1%