NetworkX

Download

Current version: 0.99

Get NetworkX from the Python Package Index, or install it with:

easy_install networkx

Questions? Suggestions?

Join the Google group:

You can also open an issue at the on the developer's site.

Quick search

This documentation is currently being updated for release 0.99 of NetworkX. This update includes significant changes to the underlying Graph and DiGraph objects to reflect our common use case of weighted graphs and to improve performance. See the API changes for detailed information.

High productivity software for complex networks

NetworkX art

NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

Quick Example

>>> import networkx as nx
>>> G=nx.Graph()
>>> G.add_edge(1,2)
>>> G.add_node("spam")
>>> print G.nodes()
[1, 2, 'spam']
>>> print G.edges()
[(1, 2)]

Documentation

Features:

  • Includes standard graph-theoretic and statistical physics functions
  • Easy exchange of network algorithms between applications, disciplines, and platforms
  • Includes many classic graphs and synthetic networks
  • Nodes and edges can be "anything" (e.g. time-series, text, images, XML records)
  • Exploits existing code from high-quality legacy software in C, C++, Fortran, etc.
  • Open source (encourages community input)
  • Unit-tested

Additional benefits due to Python:

  • Allows fast prototyping of new algorithms
  • Easy to teach
  • Multi-platform
  • Allows easy access to almost any database

Get NetworkX

NetworkX is available as an easy-installable package on the Python Package Index.

The code can be found on the NetworkX SVN server at http://networkx.lanl.gov/svn/networkx/trunk.