Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

networkx/networkx

Open more actions menu

Repository files navigation

NetworkX

https://github.com/networkx/networkx/actions/workflows/test.yml/badge.svg?branch=main https://img.shields.io/pypi/v/networkx.svg? https://img.shields.io/pypi/l/networkx.svg? https://img.shields.io/pypi/pyversions/networkx.svg? https://insights.linuxfoundation.org/api/badge/health-score?project=networkx

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

Simple example

Find the shortest path between two nodes in an undirected graph:

>>> import networkx as nx
>>> G = nx.Graph()
>>> G.add_edge("A", "B", weight=4)
>>> G.add_edge("B", "D", weight=2)
>>> G.add_edge("A", "C", weight=3)
>>> G.add_edge("C", "D", weight=4)
>>> nx.shortest_path(G, "A", "D", weight="weight")
['A', 'B', 'D']

Install

Install the latest released version of NetworkX:

$ pip install networkx

Install with all optional dependencies:

$ pip install networkx[default]

For additional details, please see the installation guide.

Bugs

Please report any bugs that you find here. Or, even better, fork the repository on GitHub and create a pull request (PR). We welcome all changes, big or small, and we will help you make the PR if you are new to git (just ask on the issue and/or see the contributor guide).

License

Released under the 3-clause BSD license:

Copyright (c) 2004-2026, NetworkX Developers
Aric Hagberg <hagberg@lanl.gov>
Dan Schult <dschult@colgate.edu>
Pieter Swart <swart@lanl.gov>
Morty Proxy This is a proxified and sanitized view of the page, visit original site.