NetworkX(http://networkx.lanl.gov/ 、https://networkx.lanl.gov/trac/wiki)*1は、なかなかにすごいPythonライブラリです。ここで言っているNetworkは、実際の通信ネットワーク(のモデル)に限らず、グラフの辺に重さ(weight)と呼ばれる値を割り当てた構造です。重さを考えないときは、全ての辺に同じ重さが付いているとすればいいので、普通のグラフも扱えます。つまり、NetworkXを使ってグラフに対するさまざまな処理ができるのです。 内容: 例題: コールグラフ 有向グラフの表現方法 NetworXを使ってみる 推移的閉包を求める 例題: コールグラフ 関数のコールグラフを扱ってみたいと思います。例えば、次のJavaScript関数を考えます。 function foo(x) { if (x < 0) { retur
![すごいグラフ処理ライブラリNetworkXの使い方 - 檜山正幸のキマイラ飼育記 (はてなBlog)](https://cdn-ak-scissors.b.st-hatena.com/image/square/281682c55dd778bbab009162d9e8b5af043e75c2/height=288;version=1;width=512/http%3A%2F%2Fwww.chimaira.org%2Fimg3%2Fcalls.gif)