Git Product home page Git Product logo

netwulf's Introduction

logo

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.

example

Paper

DOI

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.0
  • numpy>=0.14
  • matplotlib>=3.0
  • simplejson>=3.0

Documentation

Documentation Status

The full documentation is available at https://netwulf.rtfd.io.

Example

Create a network and look at it

import networkx as nx
from netwulf import visualize

G = nx.barabasi_albert_graph(100,m=1)
visualize(G)

visualization example0

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.

Contributor Covenant

Dev notes

Clone and install this repository as

git clone --recurse-submodules -j8 [email protected]: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

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

make readme

It will give you warnings about bad .rst-syntax. Fix those errors in README.rst. Then wrap the whole thing

make pypi

It will probably give you more warnings about .rst-syntax. Fix those until the warnings disappear. Then do

make upload

netwulf's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.