networkx

Science

グラフアルゴリズム

概要 networkx

NetworkX は、複雑なネットワークの構造、ダイナミクス、機能を作成、操作、研究するための標準 Python ライブラリです。無向グラフ、有向グラフ (有向グラフ)、およびマルチグラフをサポートし、パス検索、中心性、コミュニティ検出、クラスタリングなどのための豊富なアルゴリズム セットを提供します。

PyRunを使用すると、ブラウザで NetworkX 実験を直接実行できます。グラフ理論の研究、ソーシャル ネットワークのモデリング、または最短パス アルゴリズムの調査のいずれの場合でも、NetworkX はローカルにインストールすることなく、micropip 経由ですぐに利用できます。

コードと実行の出力

有向グラフを構築し、最短経路を計算します。

NetworkX Social Graphエディターで実行
import networkx as nx

G = nx.DiGraph()
G.add_edges_from([
    ("Alice", "Bob"),
    ("Alice", "Charlie"),
    ("Bob", "Diana"),
    ("Charlie", "Diana"),
    ("Diana", "Eve"),
])

print("Nodes:", list(G.nodes()))
print("Edges:", list(G.edges()))
print("\nIn-degree (followers):")
for node, deg in G.in_degree():
    print(f"  {node}: {deg}")

print("\nShortest path Alice → Eve:")
path = nx.shortest_path(G, "Alice", "Eve")
print(" → ".join(path))

print("\nIs DAG?", nx.is_directed_acyclic_graph(G))

関連パッケージ

推奨される Python リソース

関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。