異なる2つのテキストファイルを使ってnetworkxでグラフを作る際に、2つのファイルで共通するデータ(ノード)の位置を固定してグラフを表示したいのですが、何かいい方法はありますでしょうか?
どなたかご教授よろしくお願いいたします。。
例えば、seedでノードごとに固定する方法などありましたら教えて下さい。。
【データ1:test_1.txt】
A B E C A C E D A E B D C E A B
【データ2:test_2.txt】
A Z W D Y A A X W X Y Z A D
【データ1コード】
pythoon
1g = Graph() 2g = nx.read_edgelist('test_1.txt', nodetype=str) 3pos = nx.spring_layout(g, k=1, seed=2) 4 5plt.figure(figsize=(10, 10)) 6pr = nx.pagerank(g) 7nx.draw_networkx_edges(g, pos, edge_color='khaki', alpha=1) 8#node_sizeにPageRankの値を組み込む 9nx.draw_networkx_nodes(g, pos, node_color=list(pr.values()), cmap=plt.cm.Greens, 10 alpha=0.5, node_size=[20000*v for v in pr.values()], font_family='IPAexGothic') 11nx.draw_networkx_labels(g, pos, font_size=10, font_family='IPAexGothic', dpi=2000) 12plt.axis('off') 13 14plt.savefig("test_1.svg", dpi=2000)
【データ2:コード】
python
1g = Graph() 2g = nx.read_edgelist('test_2.txt', nodetype=str) 3pos = nx.spring_layout(g, k=1, seed=2) 4 5plt.figure(figsize=(10, 10)) 6pr = nx.pagerank(g) 7nx.draw_networkx_edges(g, pos, edge_color='khaki', alpha=1) 8#node_sizeにPageRankの値を組み込む 9nx.draw_networkx_nodes(g, pos, node_color=list(pr.values()), cmap=plt.cm.Greens, 10 alpha=0.5, node_size=[20000*v for v in pr.values()], font_family='IPAexGothic') 11nx.draw_networkx_labels(g, pos, font_size=10, font_family='IPAexGothic', dpi=2000) 12plt.axis('off') 13 14plt.savefig("test_2.svg", dpi=2000)
↑AとDのノードの位置がバラバラになってしまっている。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/02/14 03:15