Python3.7環境でNetworkxをインストール
マルウェアデータサイエンス本で使ったが出版当時と色々違ったりインストール方法の説明が雑だったため残しておく。
環境はLinux Mint、Python3.7はインストール済、pipenvを使って環境構築した。
まず、インストールするためにはlibgraphviz-devとPython3.7-devが必要になる。
また、pygraphvizが必要になるので一緒にインストールする必要がある。
sudo apt install libgraphviz-dev python3.7-dev
pipenv install networkx pygraphviz
python3.7-devについては使っているPythonのバージョンに合わせる必要があると思う。
以上でとりあえずコードは動いた。
追記
Networkxの使い方が若干変わっていたのでそれについても記載する。
nodeとedgeの属性を追加する方法が変わっていた。
network = networkx.Graph()
# nodeの追加と属性を設定
network.add_node(1)
network.add_node(2)
network.nodes[1]['attribute'] = 'value'
# edgeの追加と属性の設定
network.add_edge(1, 2)
network[1][2]['attribute'] = 'value'
以上のやり方で問題ないはず。