〇graphvizの出力画像
〇graphvizがインストールされたイメージの作成方法
1.以下のDockerfileとコマンドでpython3.7とgraphvizがインストールされたコンテナを作成します。
docker build -t py37graphviz:1.0 .
Dockerfile
FROM python:3.7-alpine3.9
RUN mkdir -p /usr/share/fonts \
&& cd /usr/share/fonts \
&& wget https://ipafont.ipa.go.jp/old/ipafont/IPAfont00303.php -O IPAfont00303.zip \
&& unzip IPAfont00303.zip \
&& rm IPAfont00303.zip \
&& apk --no-cache add libstdc++ \
graphviz \
fontconfig \
&& fc-cache -fv \
&& apk --no-cache --virtual pydeps add gcc \
g++ \
python3-dev \
musl-dev \
cython \
&& pip install graphviz \
&& apk del --purge pydeps
CMD ["/bin/sh"]
2.コンテナ内でサンプルコードtest1.pyからgraphvizを使用して画像を生成できます。
実行するコマンド:
docker run -v `pwd`:/tmp --rm -it py37graphviz:1.0 /usr/local/bin/python3 /tmp/test1.py
test1.py
# -*- coding: utf-8 -*-
from graphviz import Digraph
dot = Digraph(format='png')
# フォント設定
dot.attr('node', fontname="MS Gothic")
# ノード作成
dot.node("項目1")
dot.node("項目2")
dot.node("項目3")
dot.node("項目4")
# エッジ作成
dot.edge("項目1", "項目2")
dot.edge("項目2", "項目3")
dot.edge("項目2", "項目4")
dot.render("test1", directory="/tmp")
〇関連情報
PythonとGraphvizに関する記事はこちら(http://kyle-in-jp.blogspot.com/search/label/PythonGraphviz)を参照してください。
0 件のコメント:
コメントを投稿