ご希望のままの出力を得るにはまだやらなければならないことが多いと思いますが、とっかかりということで。
こういう図は、グラプとかネットワークと言います。グラフと言っても折れ線グラフとかでなく、ノードとそれをつなぐ変で構成された関係図のことです。
pythonにはグラフ/ネットワークを扱うnetworkxというモジュールがあります。それを使って提示の関係をグラフにして、とりあえず表示してみるとこんな感じになります。
python
1
2import networkx
3import matplotlib.pyplot as plt
4
5# グラフを初期化
6g = networkx.DiGraph()
7
8# ノード1~9を追加
9g.add_nodes_from(range(1, 10))
10
11# 辺を追加
12g.add_edges_from([[1,5],[1,8],
13[2,1],[2,3],[2,4],[2,5],[2,6],[2,7],[2,8],[2,9],
14[3,7],
15[4,1],[4,2],[4,3],[4,5],[4,6],[4,8],[4,9],
16[5,1],[5,2],[5,3],[5,4],[5,6],[5,7],[5,9],
17[6,1],[6,2],[6,3],[6,4],[6,5],[6,7],[6,8],[6,9],
18[7,2],
19[8,1],[8,4],[8,6],
20[9,2],[9,5],[9,8]])
21
22networkx.draw_networkx(g)
23plt.show()
グラプの見た目についてはの色を変えたり大きさを変えたりできます。
また、そもそもnetworkxは描画用のライブラリではなくて解析もできるので、必要な関係の抽出などもできると思います。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/27 03:28