📚

networkXをいちから①

2020/12/03に公開

環境

Google Coraboratory

  • Python 3.6.9
  • networkx 2.5

networkXとは

グラフとネットワークに特化したPythonライブラリ。グラフとは、グラフ理論のグラフのこと。最短経路問題も解けたりする

グラフとネットワークの違い。

グラフは、点と線。すなわちノードとエッジでできていて、ネットワークは、エッジに向きがあったり(有向)、重みがあったりする

グラフの初期化

下記にて可能

import networkx as nx
G = nx.Graph()

ノードを作る

add_node関数

ノードを作る関数。引数はIDのようなもの。エッジを引く時のキーとなる

G.add_node(1)


networkx.Graph.add_node

G.add_nodes_from関数

iterable(イテラブル)な値を引数にして、一括でノード作成も可能

G.add_nodes_from([2, 3])

networkx.DiGraph.add_nodes_from

エッジを引く

add_edge関数

引いたノードどうしをつなげる関数

G = nx.Graph()
G.add_nodes_from([1,2])
G.add_edge(1, 2)
nx.draw(G)

networkx.Graph.add_edge

まとめ

今回基本的なノードやエッジの作り方を学びました。次回かその次で、計算機能まで触ってみたい

参考文献

Discussion