Como posso desenhar gráficos automáticos usando dot em Python em um Mac?
Pergunta
Estou produzindo gráficos em um programa Python, e agora eu preciso para visualizá-los.
Eu estou usando Tkinter como GUI para visualizar todos os outros dados, e eu gostaria de ter uma pequena subwindow dentro com o gráfico dos dados. No momento eu tenho os dados que estão sendo representados em um arquivo .dot. E então eu manter graphviz aberto, o que mostra o gráfico. Mas esta é, naturalmente, abaixo do ideal. Eu preciso para obter o gráfico dentro da janela de tk.
Pensei em usar graphviz a partir da linha de comando, mas eu sempre para o mesmo bug bem conhecido:
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
O bug parece ser bem conhecido na comunidade Graphviz:
http://www.graphviz.org/bugs/b1479.html
http://www.graphviz.org/bugs/b1488.html
http://www.graphviz.org/bugs/b1498.html
Assim, uma vez que parece que eu não posso usar o utilitário de linha de comando que eu estava me perguntando se alguém sabia uma maneira direta de desenhar um gráfico de pontos em Python, sem usar a linha de comando, ou fazer algo que seria incorrer no mesmo erro?
Estou programando em um Mac Leopard, python 2.5.2
Solução
Eu não tenho um mac para testá-lo, mas o NetworkX pacote inclui métodos ler arquivos .dot e desenhar gráficos usando matplotlib . É possível incorporar uma figura matplotlib em Tk ( exemplo 1 , exemplo 2 ).
Outras dicas
Google puxa para cima http://code.google.com/p/pydot/ . Eu não tentei, mas parece promissor.