Pythonでネットワーク図を描画してみた

オープンソースで学ぶ社会ネットワーク分析』を参考にしつつ、Pythonでネットワーク図を描いてみたのでメモ。

 

1.NetworkX、NumPy、matplotlibをインストール

NetworkX:複雑なネットワークの作成、操作、解析をするPythonライブラリ

NumPy:数値計算をするPythonライブラリ

matplotlib:PythonとNumPy用のグラフ描画ライブラリ

 

以下のeasy_installをターミナルに貼り付け実行すればインストール完了。

 

2.データファイルをPythonを実行しているフォルダーに配置

GitHubにあるデータファイル"ACME_orgchart.net"をダウンロード。

https://github.com/maksim2042/SNABook/blob/master/chapter1/ACME_orgchart.net 

ダウンロードした"ACME_orgchart.net"をPythonを実行しているフォルダーに配置する

 

3.ネットワーク図を描画

ターミナルで、pythonとタイプし実行すると、pythonが起動する。

そこで以下のコードを実行すると、ネットワーク図を描画する。

オープンソースで学ぶ社会ネットワーク分析』に書かれているコードだけでは、

うまく描画できないので2行ほどコードを追加。

 

 

Pythonでネットワーク図が描けた☆彡

f:id:millionsmile:20120622014101p:plain

ちなみに、net.draw()を実行する度に、このネットワーク図の形状は変化する。トポロジーは同じなんだけど。

 

参考文献:

オープンソースで学ぶ社会ネットワーク分析』

Maksim Tsvetovat、Alexander Kouznetsov 著、長尾 高弘 訳

epubのみ。紙の本はないらしい。

http://www.oreilly.co.jp/books/9784873115504/

 

epubをブラウザで読むためのツール:

readiumというツールが便利。

http://readium.org/