Как я могу рисовать автоматические графики с помощью dot в Python на Mac?

StackOverflow https://stackoverflow.com/questions/903582

Вопрос

Я создаю графики в программе на Python, и теперь мне нужно их визуализировать.

Я использую Tkinter в качестве графического интерфейса для визуализации всех других данных, и я хотел бы иметь небольшое подокно внутри с графиком данных.На данный момент у меня есть данные, представленные в виде файла .dot.И затем я оставляю graphviz открытым, который показывает график.Но это, конечно, неоптимально.Мне нужно получить график внутри окна tk.

Я думал об использовании graphviz из командной строки, но я всегда сталкиваюсь с одной и той же хорошо известной ошибкой:

Desktop ibook$ dot -Tpng -O 1.dot
dyld: lazy symbol binding failed: Symbol not found: _pixman_image_create_bits
  Referenced from: /usr/local/lib/graphviz/libgvplugin_pango.5.dylib
  Expected in: flat namespace

dyld: Symbol not found: _pixman_image_create_bits
  Referenced from: /usr/local/lib/graphviz/libgvplugin_pango.5.dylib
  Expected in: flat namespace

Trace/BPT trap

Ошибка, похоже, хорошо известна в сообществе Graphviz:

http://www.graphviz.org/bugs/b1479.html

http://www.graphviz.org/bugs/b1488.html

http://www.graphviz.org/bugs/b1498.html

Итак, поскольку кажется, что я не могу использовать утилиту командной строки, мне было интересно, знает ли кто-нибудь прямой способ нарисовать точечный график на Python без использования командной строки или выполнения чего-либо, что повлекло бы за собой ту же ошибку?

Я программирую на Mac Leopard, python 2.5.2

Это было полезно?

Решение

У меня нет Mac, чтобы протестировать его, но NetworkX Сеть X пакет включает в себя методы для чтение файлов .dot и рисуйте графики используя matplotlib - файл.Вы можете встроить рисунок matplotlib в Tk (пример 1, пример 2).

Другие советы

Быстро Google подъезжает http://code.google.com/p/pydot/.Я еще не пробовал, но выглядит многообещающе.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top