Netwulf
Netwulf: Interactive visualization of networks in Python - Published in JOSS (2019)
Science Score: 98.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 6 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Keywords from Contributors
Repository
Interactive visualization of networks based on Ulf Aslak's d3 web app.
Basic Info
Statistics
- Stars: 300
- Watchers: 8
- Forks: 28
- Open Issues: 17
- Releases: 8
Topics
Metadata Files
README.md

About
Simple and interactive network visualization in Python. Network visualization is an indispensable tool for exploring and communicating patterns in complex systems. Netwulf offers an ultra-simple API for reproducible interactive visualization of networks directly from a Python prompt or Jupyter notebook. As a research tool, its purpose is to allow hassle-free quick interactive layouting/styling for communication purposes.
The package is build around the philosophy that network manipulation and preprocessing should be done programmatically, but that the efficient generation of a visually appealing network is best done interactively, without code.

Paper
If you use netwulf for your scientific work, consider citing us! We're published in JOSS.
Install
pip install netwulf
netwulf was developed and tested for
- Python 3.5
- Python 3.6
- Python 3.7
So far, the package's functionality was tested on Mac OS X, several Linux distributions and Windows NT. Windows support cannot be guaranteed as we do not have constant access to machines with this OS.
Dependencies
netwulf directly depends on the following packages which will be installed by pip during the installation process
networkx>=2.0numpy>=0.14matplotlib>=3.0simplejson>=3.0
Documentation
The full documentation is available at https://netwulf.rtfd.io.
Example
Create a network and look at it
```python import networkx as nx from netwulf import visualize
G = nx.barabasialbertgraph(100,m=1) visualize(G) ```

Changelog
Changes are logged in a separate file.
License
This project is licensed under the MIT License.
Contributing
If you want to contribute to this project, please make sure to read the code of conduct and the contributing guidelines. In case you're wondering about what to contribute, we're always collecting ideas of what we want to implement next in the outlook notes.
Dev notes
Clone and install this repository as
bash
git clone --recurse-submodules -j8 git@github.com:benmaier/netwulf.git
make
Note that make per default lets pip install a development version of the repository.
The JS base code in /netwulf/js/ is a fork of Ulf Aslak's interactive web app. If this repository is updated, change to /netwulf/js/, then do
bash
git fetch upstream
git merge upstream/master
git commit -m "merged"
git push
If you want to upload to PyPI, first convert the new README.md to README.rst
bash
make readme
It will give you warnings about bad .rst-syntax. Fix those errors in README.rst. Then wrap the whole thing
bash
make pypi
It will probably give you more warnings about .rst-syntax. Fix those until the warnings disappear. Then do
bash
make upload
Owner
- Name: Benjamin F. Maier
- Login: benmaier
- Kind: user
- Location: Copenhagen
- Company: Technical University of Denmark
- Website: benmaier.org
- Twitter: benfmaier
- Repositories: 101
- Profile: https://github.com/benmaier
Postdoc @suneman 's, generative art, electronic music. DTU Compute & SODAS.
JOSS Publication
Netwulf: Interactive visualization of networks in Python
Authors
Tags
JavaScript networks visualization interactiveCitation (CITATION.cff)
cff-version: 1.2.0
title: Netwulf
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Ulf
family-names: Aslak
email: ulfaslak@gmail.com
- given-names: Benjamin Frank
family-names: Maier
email: benjaminfrankmaier@gmail.com
identifiers:
- type: doi
value:
repository-code: 'https://github.com/benmaier/netwulf'
abstract: >-
Netwulf is a light-weight Python library that provides a simple API for interactively visualizing
a network and returning the computed layout and style. It is build around the philosophy
that network manipulation and preprocessing should be done programmatically, but that the
efficient generation of a visually appealing network is best done interactively, without code.
Therefore, it offers no analysis functionality and only few exploration features, but instead
focuses almost entirely on fast and intuitive layout manipulation and node/link styling.
preferred-citation:
type: article
authors:
- family-names: "Aslak"
given-names: "Ulf"
orcid: "https://orcid.org/0000-0003-4704-3609"
- family-names: "Benjamin Frank"
given-names: "Maier"
orcid: "https://orcid.org/0000-0001-7414-8823"
journal: "Journal of Open Source Software"
title: "Netwulf: Interactive visualization of networks in Python"
volume: 4
issue: 42
year: 2019
start: 1425
doi: "10.21105/joss.01425"
url: "https://doi.org/10.21105/joss.01425"
publisher: "The Open Journal"
GitHub Events
Total
- Watch event: 7
- Fork event: 2
Last Year
- Watch event: 7
- Fork event: 2
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Benjamin Maier | b****r@g****m | 150 |
| ulfaslak | u****n@g****m | 35 |
| vc1492a | v****a@g****m | 1 |
| Michael Hoefer | m****r@g****m | 1 |
| Leonardo Uieda | l****a@g****m | 1 |
| Kyle Niemeyer | k****r@g****m | 1 |
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 44
- Total pull requests: 10
- Average time to close issues: about 1 month
- Average time to close pull requests: about 1 month
- Total issue authors: 20
- Total pull request authors: 7
- Average comments per issue: 3.82
- Average comments per pull request: 0.8
- Merged pull requests: 7
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- benmaier (18)
- floklimm (3)
- zoldaten (3)
- ulfaslak (2)
- jonimatix (2)
- leouieda (2)
- optidus (1)
- tasgon (1)
- wanderingashenvalewisp (1)
- davhin (1)
- g-ioannou (1)
- Umak49 (1)
- vc1492a (1)
- ramadap (1)
- HarrialX (1)
Pull Request Authors
- ulfaslak (3)
- yarikoptic (2)
- vc1492a (1)
- leouieda (1)
- kyleniemeyer (1)
- davhin (1)
- mjhoefer (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 2,877 last-month
- Total dependent packages: 2
- Total dependent repositories: 12
- Total versions: 22
- Total maintainers: 1
pypi.org: netwulf
Interactively visualize networks with Ulf Aslak's d3-tool from Python.
- Homepage: https://github.com/benmaier/netwulf
- Documentation: https://netwulf.rtfd.io
- License: MIT
-
Latest release: 0.1.5
published over 5 years ago
Rankings
Maintainers (1)
Dependencies
- pip >=18.0
- matplotlib >=3.0
- networkx >=2.0
- numpy >=0.14
- simplejson >=3.0
- matplotlib >=3.0
- networkx >=2.0
- numpy >=0.14
- simplejson >=3.0
