NetworkXでのGEXFファイルの読み書き
説明1 2
GEXFはGraph Exchange XML Formatの略で、グラフ構造を説明するための言語だ。Gephiプロジェクトと一緒に始まったという説明を見ると、Gephiで扱いやすい設計になっているようだ。
コード
書き込み
NetworkXを使って、次のようなグラフを作ろう。
import networkx as nx
from itertools import combinations
>>> G = nx.Graph()
>>> IVE = ["가을", "안유진", "레이", "장원영", "리즈", "이서"]
>>> LESSERAFIM = ["사쿠라", "김채원", "허윤진", "카즈하", "홍은채"]
>>> IZONE = ["사쿠라", "김채원", "안유진", "장원영"]
>>>
>>> G.add_nodes_from(IVE, group="IVE")
>>> G.add_nodes_from(LESSERAFIM, group="LESSERAFIM")
>>>
>>> G.add_edges_from(list(combinations(IVE, 2)))
>>> G.add_edges_from(list(combinations(LESSERAFIM, 2)))
>>> G.add_edges_from(list(combinations(IZONE, 2)))
write_gexf()
を使って、NetworkXのグラフをgexfファイルに保存できる。
>>> nx.write_gexf(G,'IZONE_network.gexf')
Gephiで開くと、視覚化はこんな感じになる。
読み込み
read_gexf(path)
でgexfファイルを読み込むことができる。
>>> G = nx.read_gexf("IZONE_network.gexf")
>>> G
<networkx.classes.graph.Graph object at 0x0000027F09DDDB20>
環境
- OS: Windows11
- バージョン: Python 3.9.2, networkx 2.8.6, Gephi 0.9.7