NetworkX(主にDiGraph)の使い方 (3)
GがNetworkXのグラフだとして、
- G自体がノードイテレータとして使える。例: [n for n in G]
- G.graph でグラフ全体の属性を得られる。
- G.node でノードセットを辞書の形で得られる。
- G.edge でエッジセットを辞書の形で得られる。
- G.nodeのキーがノードで、値はノード属性
- G.edgeのキーがソースノードで、値は「ターゲットノードと辺属性」の辞書
- G自体が、G.edgeと同じように使える。G[1][2] とか G[1][3]['color']='blue' とか。
- グラフ全体の属性の設定は G.graph['day']='Monday' とか。
- ノード属性の設定は G.node[1]['room'] = 714 とか。
- 辺(エッジ)属性の設定は G[1][2]['weight'] = 4.7 、G.edge[1][2]['weight'] = 4 とか。
- G.nodes() でノードセット
- G.edges() でエッジセット
- 関数 nx.to_edgelist(G) でエッジリストを取り出す
- 関数として、nx.nodes(G) がある。
- 関数として、nx.edges(G) がある。
- 関数として、nx.{set/get}_{node/edge}_attributes がある。
- G.neighbors(n), G.successors(n) とかもある。
実験用には、次のようなグラフが使える。
- nx.path_graph(4, nx.DiGraph())
- nx.complete_graph(4, nx.DiGraph())
- nx.cycle_graph(4, nx.DiGraph())