dorkhub

ndlib

Network Diffusion Library - (for NetworkX and iGraph)

GiulioRossetti
Python29980 forksBSD-2-Clauseupdated 1 day ago
git clone https://github.com/GiulioRossetti/ndlib.gitGiulioRossetti/ndlib

NDlib - Network Diffusion Library

pyversions Build Status Coverage Status Documentation Status DOI Downloads Downloads SBD++

plot

NDlib provides implementations of several spreading and opinion dynamics models.

The project documentation can be found on ReadTheDocs.

If you use NDlib as support to your research consider citing:

G. Rossetti, L. Milli, S. Rinzivillo, A. Sirbu, D. Pedreschi, F. Giannotti. NDlib: a Python Library to Model and Analyze Diffusion Processes Over Complex Networks. Journal of Data Science and Analytics. 2017. DOI:0.1007/s41060-017-0086-6 (pre-print available on arXiv)

G. Rossetti, L. Milli, S. Rinzivillo, A. Sirbu, D. Pedreschi, F. Giannotti. "NDlib: Studying Network Diffusion Dynamics", IEEE International Conference on Data Science and Advanced Analytics, DSAA. 2017.

Promo Video

Promo

Installation

To install the library just download (or clone) the current project and copy the ndlib folder in the root of your application.

Alternatively use pip:

sudo pip install ndlib

Interactive Dashboard

NDlib includes a browser-based dashboard service for quick, code-free experimentation with diffusion and opinion models.

The dashboard lets you:

  • build or load a network
  • configure model and graph parameters from the UI
  • run simulations in a three-step workflow
  • inspect network state, trends, prevalence, and opinion evolution
  • select infected seeds directly from the graph preview for epidemic models
  • use community-aware layouts to expose modular structure

Run it from the repository root with:

python ndlib/dashboard/server.py

If the package is installed, you can also launch it with the bundled command:

ndlib-dashboard

Once the server starts, open the local URL printed in the terminal.

Configuration view Network view
NDlib dashboard configuration view NDlib dashboard network view

Documentation, Tutorials and Online Environments

For examples, tutorials and a complete reference visit the project documentation website on ReadTheDocs.

If you would like to test NDlib functionalities without installing anything on your machine consider using the preconfigured Jupyter Hub instances offered by SoBigData RI.

Jupyter Notebook Tutorial

Interested in an extensive tutorial on NDlib? Check out the official Jupyter Notebooks!

NDlib Overview

Collaborate with us!

NDlib is an active project, any contribution is welcome!

If you like to include your model in NDlib feel free to fork the project, open an issue and contact us.

How to contribute to this project?

Contributing is good, doing it correctly is better! Check out our rules, issue a proper pull request /bug report / feature request.

Do you want to be part of the NDlib community to discuss enhancements, desiderata, bug fix? Join us on Slack!

We are a welcoming community... just follow the Code of Conduct.

more like this

sandbox

A sandbox game created in C using raylib, featuring various types of falling pixels, such as sand or water. (more in th…

C52

search

search projects, people, and tags