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

Foi útil?

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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top