From Wikipedia, the free encyclopedia
Jump to: navigation, search
A graph created with NetworkX
A graph created with NetworkX
Original author(s) Aric Hagberg
Pieter Swart
Dan Schult
Developer(s) LANL and others
Initial release 11 April 2005; 12 years ago (2005-04-11)[1][2]
Stable release
1.11 / January 30, 2016; 14 months ago (2016-01-30)
Written in Python
Operating system Cross-platform
Type Software library
License BSD-new license

NetworkX is a Python library for studying graphs and networks. NetworkX is free software released under the BSD-new license.


  • Classes for graphs and digraphs.
  • Conversion of graphs to and from several formats.
  • Ability to construct random graphs or construct them incrementally.
  • Ability to find subgraphs, cliques, k-cores.
  • Explore adjacency, degree, diameter, radius, center, betweenness, etc.
  • Draw networks in 2D and 3D.


NetworkX is suitable for operation on large real-world graphs: e.g., graphs in excess of 10 million nodes and 100 million edges.[3] Due to its dependence on a pure-Python "dictionary of dictionary" data structure, NetworkX is a reasonably efficient, very scalable, highly portable framework for network and social network analysis.[4]


NetworkX is integrated into SageMath.[5]

See also[edit]


  1. ^ NetworkX first public release (NX-0.2), From: Aric Hagberg, Date: Apr 12, 2005, Python-announce-list mailing list
  2. ^ NetworkX initial release, NX-0.2, hagberg - 2005-04-11, Project Info - NetworkX, Registered: 2004-10-21,
  3. ^ A Hagberg, D Conway, "Hacking social networks using the Python programming language (Module II - Why do SNA in NetworkX)", Sunbelt 2010: International Network for Social Network Analysis.
  4. ^ A Hagberg, D Schult, P Swart, Exploring Network Structure, Dynamics, and Function using NetworkX, Proceedings of the 7th Python in Science conference (SciPy 2008), G Varoquaux, T Vaught, J Millman (Eds.), pp. 11-15.
  5. ^

External links[edit]