Wie kann ich auf einem Mac in Python mit Punkt automatische Graphen zeichnen?
Frage
Ich produziere Graphen in einem Python-Programm, und jetzt brauche ich sie sichtbar zu machen.
Ich bin mit Tkinter als GUI alle anderen Daten zu visualisieren, und ich würde ein kleines Unterfenster im Inneren mit dem Graphen der Daten haben möchten. Im Moment habe ich die Daten in einer Datei .dot dargestellt werden. Und dann halte ich graphviz offen, was die Grafik zeigt. Aber das ist natürlich suboptimal. Ich brauche die Grafik innerhalb der tk-Fenster zu erhalten.
Ich dachte über graphviz von der Kommandozeile, aber ich immer in die gleichen bekannten Fehler laufen:
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
Der Fehler scheint auch in der Graphviz Gemeinschaft bekannt zu sein:
http://www.graphviz.org/bugs/b1479.html
http://www.graphviz.org/bugs/b1488.html
http://www.graphviz.org/bugs/b1498.html
So, da es scheint, dass ich nicht das Befehlszeilenprogramm verwendet, kann ich mich gefragt, ob jemand einen direkten Weg kannte einen Punkt Graph in Python zu ziehen, ohne die Befehlszeile, oder etwas zu tun, den gleichen Fehler entstehen würde?
Ich programmiere auf einem Mac Leopard, Python 2.5.2
Lösung
Ich habe nicht einen Mac zu testen, aber das NetworkX Paket enthält Methoden zum lesen .dot Dateien und zeichnen Graphen mit matplotlib . Sie können eine matplotlib Figur in Tk einbetten ( Beispiel 1 , Beispiel 2 ).
Andere Tipps
Google zieht http://code.google.com/p/pydot/ . Ich habe es nicht versucht, aber es sieht vielversprechend aus.