Преобразование точки в PNG в Python - PullRequest
28 голосов
/ 15 марта 2011

У меня есть файл точек, сгенерированный из моего кода, и я хочу отобразить его в своем выводе.Для этого я видел в сети, что команда похожа на эту на cmd

dot -Tpng InputFile.dot -o OutputFile.png  for Graphviz

Но моя проблема в том, что я хочу использовать этот встроенный в моей программе Python.

Как я могу это сделать ??

Я посмотрел на pydot, но не могу найти ответ там .....

Ответы [ 4 ]

42 голосов
/ 15 марта 2011

Загрузите файл с pydot.graph_from_dot_file, чтобы получить экземпляр класса pydot.Dot. Затем запишите его в файл PNG методом write_png.

import pydot

(graph,) = pydot.graph_from_dot_file('somefile.dot')
graph.write_png('somefile.png')
20 голосов
/ 15 марта 2011

pydot требует, чтобы двоичные файлы GraphViz были установлены в любом случае, поэтому, если вы уже сгенерировали свой файл точек, вы также можете просто вызвать точку непосредственно. Например:

from subprocess import check_call
check_call(['dot','-Tpng','InputFile.dot','-o','OutputFile.png'])
2 голосов
/ 26 августа 2018

Вы можете попробовать:

import os
os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'
os.system('dot -Tpng random.dot -o random.png')
2 голосов
/ 15 марта 2011

Вы можете использовать pygraphviz .Как только вы загрузите график, вы можете сделать

graph.draw('file.png')
...