〇サンプルコード
# coding: utf-8 from graphviz import Digraph dot = Digraph(format='png') # フォント設定 dot.attr('node', fontname="MS Gothic") # ノード作成 with dot.subgraph(name="cluster0") as sg: sg.node("手順1") sg.node("手順2") sg.edge("手順1", "手順2") sg.attr(label="Procedure-A") with dot.subgraph(name="cluster1") as sg: sg.node("手順3") sg.node("手順4") sg.edge("手順3", "手順4") sg.attr(label="Procedure-B") dot.node('開始') dot.node('終了') dot.edge("開始", "手順1") dot.edge("開始", "手順3") dot.edge("手順2", "終了") dot.edge("手順4", "終了") dot.render("graphviz-test27")
○出力画像
〇graphvizのインストール
pipenv install graphvizやpip install graphvizなどでインストールします。
○関連情報
・Graphvizまとめ
・コマンドから同様のことを実行する場合は「Graphvizでサブグラフ(クラスタ)にラベルを設定する」を参照してください。
・PythonとGraphvizに関する他の記事はこちらを参照してください。
・サンプルコードを実行する環境としてDockerコンテナを利用することもできます。コンテナの構築方法は「Dockerでpython3.7とgraphvizをインストールしたコンテナ(Alpine3.9ベース)を作成する」を参照してください。