0

我在 Python 程序中生成图表,现在我需要将它们可视化。

我使用 Tkinter 作为 GUI 来可视化所有其他数据,并且我想在里面有一个带有数据图的小子窗口。目前,我将数据表示在 .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 上编程

4

2 回答 2

2

我没有 Mac 来测试它,但NetworkX包包含读取 .dot 文件和使用matplotlib绘制图形的方法。您可以在 Tk 中嵌入 matplotlib 图(示例 1示例 2)。

于 2009-05-24T14:10:54.270 回答
1

快速谷歌拉起http://code.google.com/p/pydot/。我还没有尝试过,但它看起来很有希望。

于 2009-05-25T04:28:13.540 回答