https://github.com/cytoscape/ipycytoscape

A Cytoscape Jupyter widget

https://github.com/cytoscape/ipycytoscape

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 33 committers (6.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.1%) to scientific vocabulary

Keywords

binder cytoscape jupyter-notebook

Keywords from Contributors

ipython jupyterlab notebooks visualizations closember visualisation dataviz wx tk qt
Last synced: 5 months ago · JSON representation

Repository

A Cytoscape Jupyter widget

Basic Info
Statistics
  • Stars: 282
  • Watchers: 28
  • Forks: 63
  • Open Issues: 74
  • Releases: 4
Topics
binder cytoscape jupyter-notebook
Created about 6 years ago · Last pushed 8 months ago
Metadata Files
Readme License

README.md

ipycytoscape

Tests Documentation Status StackOverflow Join 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:

bash pip install ipycytoscape

Pandas installation

You can install the Pandas dependencies for ipycytoscape with pip:

pip install pandas

Or conda-forge:

mamba install pandas

Neo4j installation

You can install the neo4j dependencies for ipycytoscape with pip:

pip install -e ".[neo4j]"

Or conda-forge: mamba install py2neo neotime

For jupyterlab 1.x or 2.x:

If you are using JupyterLab 1.x or 2.x then you will also need to install nodejs and the jupyterlab-manager extension. You can do this like so:

```bash

installing nodejs

conda install -c conda-forge nodejs

install jupyterlab-manager extension

jupyter labextension install @jupyter-widgets/jupyterlab-manager@2.0 --no-build

if you have previously installed the manager you still to run jupyter lab build

jupyter lab build ```

For Jupyter Notebook 5.2 and earlier

You may also need to manually enable the nbextension: bash 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: ```bash conda create -n ipycytoscape -c conda-forge jupyterlab nodejs conda activate ipycytoscape

clone repo

git clone https://github.com/cytoscape/ipycytoscape.git cd ipycytoscape ```

Install python package for development

This will run npm install and npm run build. This command will also install the test suite and the docs locally:

``` pip install jupyter_packaging==0.7.9 pip install -e ".[test, docs]"

jupyter labextension develop . --overwrite ```

optionally install the pre-commit hooks with:

bash pre-commit install

Or 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 watching the ipycytoscape code: bash npm run watch And in a separate terminal start JupyterLab normally: bash jupyter lab once the webpack rebuild finishes refresh the JupyterLab page to have your changes take effect.

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 conda/mamba:

mamba -c conda-forge install networkx pandas nbval pytest

And to run it:

pytest

How to build the docs

cd docs

Install dependencies:

conda env update --file doc_environment.yml

And build them:

make html

Acknowledgements

The ipycytoscape project was started by Mariana Meireles at QuantStack. This initial development was funded as part of the PLASMA project, which is led by Claire Vandiedonck, Pierre Poulain, and Sandrine Caburet.

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.

Owner

  • Name: Cytoscape Consortium
  • Login: cytoscape
  • Kind: organization

GitHub Events

Total
  • Watch event: 11
  • Issue comment event: 2
  • Push event: 5
  • Pull request event: 1
  • Fork event: 2
Last Year
  • Watch event: 11
  • Issue comment event: 2
  • Push event: 5
  • Pull request event: 1
  • Fork event: 2

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 547
  • Total Committers: 33
  • Avg Commits per committer: 16.576
  • Development Distribution Score (DDS): 0.581
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Mariana Meireles m****a@p****e 229
ianhi i****k@g****m 112
Peter Rose p****e@u****u 49
joseberlines 3****s 43
Jens H. Nielsen j****n@g****m 15
dependabot[bot] 4****] 13
Mridul Seth s****l@g****m 11
Sylvain Corlay s****y@g****m 10
Stefan Countryman s****n@g****m 6
Nicholas Bollweg n****g@g****m 5
martinRenou m****u@g****m 5
vaniisgh v****h@l****k 5
Sven Schiffer s****n@s****g 5
Jeremy Tuloup j****p@g****m 5
Jay Donnell j****l@g****m 4
Cagtay Fabry 4****y 4
pre-commit-ci[bot] 6****] 3
sandertyu n****s@u****u 3
Jose Ferro j****e@J****x 2
Mridul Seth s****b@g****m 2
Michał Krassowski 5****i 2
Tim Paine t****4@g****m 2
vinh n****0@g****m 2
Andre LaBranche d****e@m****m 1
Daniel Himmelstein d****n@g****m 1
Kozo Nishida k****a@g****m 1
Maarten A. Breddels m****s@g****m 1
Max Klein t****n 1
Ryan Morshead r****d@g****m 1
Sevickson s****n@o****m 1
and 3 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 53
  • Total pull requests: 54
  • Average time to close issues: 3 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 27
  • Total pull request authors: 11
  • Average comments per issue: 2.66
  • Average comments per pull request: 1.89
  • Merged pull requests: 35
  • Bot issues: 0
  • Bot pull requests: 22
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • marimeireles (8)
  • ianhi (5)
  • shadiakiki1986 (5)
  • fpom (4)
  • joseberlines (4)
  • pwrose (3)
  • davidbrochart (2)
  • ktaletsk (1)
  • jenshnielsen (1)
  • koertkuipers (1)
  • Phocion (1)
  • gt-eq-1998 (1)
  • hbalp (1)
  • leilakany (1)
  • AlexejPenner (1)
Pull Request Authors
  • dependabot[bot] (19)
  • marimeireles (9)
  • ianhi (8)
  • jenshnielsen (8)
  • pre-commit-ci[bot] (3)
  • timkpaine (3)
  • vaniisgh (1)
  • pwrose (1)
  • bollwyvl (1)
  • donbr (1)
  • dreness (1)
Top Labels
Issue Labels
enhancement (14) question (10) documentation (4) bug (3) good first issue (3) help wanted (2) mentored (2) hacktoberfest (1) python (1)
Pull Request Labels
dependencies (19)

Packages

  • Total packages: 2
  • Total downloads:
    • npm 33 last-month
    • pypi 36,313 last-month
  • Total docker downloads: 5,650
  • Total dependent packages: 17
    (may contain duplicates)
  • Total dependent repositories: 26
    (may contain duplicates)
  • Total versions: 43
  • Total maintainers: 7
pypi.org: ipycytoscape

A Cytoscape widget for Jupyter

  • Versions: 22
  • Dependent Packages: 16
  • Dependent Repositories: 26
  • Downloads: 36,313 Last month
  • Docker Downloads: 2,559
Rankings
Dependent packages count: 0.8%
Downloads: 1.7%
Docker downloads count: 1.9%
Average: 2.8%
Dependent repos count: 2.8%
Stargazers count: 4.2%
Forks count: 5.4%
Last synced: 6 months ago
npmjs.org: jupyter-cytoscape

A Cytoscape Jupyter Widget

  • Versions: 21
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 33 Last month
  • Docker Downloads: 3,091
Rankings
Docker downloads count: 0.6%
Forks count: 3.7%
Stargazers count: 3.8%
Downloads: 5.2%
Average: 8.6%
Dependent repos count: 18.8%
Dependent packages count: 19.5%
Last synced: 6 months ago

Dependencies

package-lock.json npm
  • 1073 dependencies
package.json npm
  • @jupyterlab/builder ^3.0.0 development
  • @phosphor/application ^1.6.0 development
  • @phosphor/widgets ^1.6.0 development
  • @types/expect.js ^0.3.29 development
  • @types/mocha ^5.2.5 development
  • @types/node ^10.11.6 development
  • @types/webpack-env ^1.13.6 development
  • @typescript-eslint/eslint-plugin ^5.10.0 development
  • @typescript-eslint/parser ^5.10.0 development
  • css-loader ^3.2.0 development
  • eslint ^8.0.0 development
  • eslint-config-prettier ^6.11.0 development
  • eslint-plugin-prettier ^3.1.3 development
  • expect.js ^0.3.1 development
  • fs-extra ^7.0.0 development
  • karma ^6.0.0 development
  • karma-chrome-launcher ^2.2.0 development
  • karma-firefox-launcher ^1.1.0 development
  • karma-ie-launcher ^1.0.0 development
  • karma-mocha ^2.0.1 development
  • karma-mocha-reporter ^2.2.5 development
  • karma-typescript ^5.5.0 development
  • lint-staged ^10.2.2 development
  • mkdirp ^0.5.1 development
  • mocha ^9.2.2 development
  • npm-run-all ^4.1.3 development
  • prettier ^2.0.5 development
  • rimraf ^2.6.2 development
  • source-map-loader ^0.2.4 development
  • style-loader ^1.0.0 development
  • ts-loader ^5.2.1 development
  • typescript ~3.7.1 development
  • webpack ^5.0.0 development
  • webpack-cli ^4.0.0 development
  • @jupyter-widgets/base ^1.1.10 || ^2 || ^3 || ^4.0.0
  • @types/cytoscape ^3.8.8
  • cytoscape ^3.14.0
  • cytoscape-cola ^2.3.0
  • cytoscape-dagre ^2.2.2
  • cytoscape-klay ^3.1.3
  • cytoscape-popper ^1.0.6
  • tippy.js ^5.2.1
setup.py pypi
  • ipywidgets >=7.6.0
  • spectate >=1.0.0
.github/workflows/binder-on-pr.yml actions
  • actions/github-script v1 composite
.github/workflows/lint.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
  • actions/setup-python v2 composite
  • psf/black stable composite
.github/workflows/release.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
  • actions/setup-python v2 composite
.github/workflows/test.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
  • actions/setup-python v2 composite
pyproject.toml pypi
docs/environment.yml conda
  • ipycytoscape >=1.0.3
  • jupyter_sphinx
  • jupyterlab 2.*
  • nbsphinx
  • nbsphinx-link
  • networkx
  • nodejs
  • pandas
  • python 3.7.*
  • sphinx
  • sphinx-copybutton
  • sphinx_rtd_theme
environment.yml conda
  • ipywidgets 7.*
  • jupyterlab 3.6.*
  • matplotlib-base
  • monotonic
  • networkx
  • nodejs 18.*
  • pandas
  • py2neo
  • spectate
  • traitlets