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.
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
>>> 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)] |
Tutorial Reference Examples Gallery |
Contents Search Page General Index Module Index |
- 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
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.