Friday, February 08, 2019

PythonとGraphvizのneatoで無方向グラフを描画する

PythonとGraphvizのneatoで無方向グラフを描画するには、以下のようにengineを指定します。

〇サンプルコード
# coding: utf-8 
from graphviz import Graph

gv = Graph(engine='neato', format='png')
# フォント設定
gv.attr('node', fontname="MS Gothic")
# ノード作成
gv.node("項目1")
gv.node("項目2")
gv.node("項目3")
gv.node("項目4")
gv.node("項目5")
# エッジ作成
gv.edge("項目1", "項目2")
gv.edge("項目2", "項目3")
gv.edge("項目2", "項目4")
gv.edge("項目2", "項目5")
gv.render("graphviz-test32")

○出力画像


〇graphvizのインストール
pipenv install graphvizやpip install graphvizなどでインストールします。


○関連情報
Graphvizまとめ

・PythonとGraphvizに関する他の記事はこちらを参照してください。

・サンプルコードを実行する環境としてDockerコンテナを利用することもできます。コンテナの構築方法は「Dockerでpython3.7とgraphvizをインストールしたコンテナ(Alpine3.9ベース)を作成する」を参照してください。

No comments: