コードから生成されたドットファイルがあり、出力にレンダリングしたい。このために、コマンドはcmd
でこのようなものであることをネットで見ました
dot -Tpng InputFile.dot -o OutputFile.png for Graphviz
しかし、私の問題は、pythonプログラムでこの組み込み機能を使用したいということです。
どうすればできますか?
私はpydotを見ましたが、そこに答えを見つけることができないようです.....
pydot はとにかくGraphVizバイナリをインストールする必要があるため、既にドットファイルを生成している場合は、ドットを直接自分で呼び出すこともできます。例えば:
from subprocess import check_call
check_call(['dot','-Tpng','InputFile.dot','-o','OutputFile.png'])
pydot.graph_from_dot_file
でファイルをロードして、pydot.Dot
クラスインスタンスを取得します。次に、write_png
メソッドを使用してPNGファイルに書き込みます。
import pydot
(graph,) = pydot.graph_from_dot_file('somefile.dot')
graph.write_png('somefile.png')
あなたが試すことができます:
import os
os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'
os.system('dot -Tpng random.dot -o random.png')
pygraphviz を使用できます。グラフをロードしたら、次のことができます
graph.draw('file.png')