无法从Python中的Matplotlib导入FigureCanvasWxAgg

时间:2011-05-13 02:51:47

标签: python wxpython matplotlib pydev

我正在使用Python x64安装了所有内容,但我在FigCanvasWxAgg上得到了一个未解析的导入。我可以到达matplotlib.backends.backend_wxagg,但是没有从那里导入的FigureCanvasWxAgg。

我也试过了 from matplotlib.backends.backend_wxagg import *但它也不起作用。

编辑:问题解决了。我看了一下我的backend_wxagg.py文件,发现它与列出here的文件完全不同。所以我将它从版本0.99.1.1复制到我的1.0.1文件中。 (我应该只是卸载1.0.1 matplotlib并使用旧版本。)无论如何,它让示例正常工作,所以我很高兴。

1 个答案:

答案 0 :(得分:2)

你在使用什么操作系统,你是如何安装matplotlib的?

您的解决方案很可能会破坏事物......您需要像往常一样构建和安装wx后端。我不确定wx后端,但其他几个后端是C扩展,而不仅仅是一个简单的python文件。

默认情况下不构建wx后端,因此它通常作为单独的包包含在内。 (例如,在Suse的情况下为python-matplotlib-wx)您需要像往常一样通过包管理器安装wx后端。

如果您使用的是没有软件包管理器的操作系统(例如windows,osx),安装程序可能会也可能不会构建wx后端,具体取决于构建它的人员以及配置方式。我完全不了解非Linux或BSD,所以你在那里自己。尝试查看从哪里下载matplotlib二进制文件,看看他们是否有一个单独的wx后端安装程序。

如果您是从源代码构建的,则需要启用wx后端并重建。为此,请编辑构建目录中的site.cfg文件。如果您没有在构建目录中找到site.cfg.default文件,则可能需要将默认值(site.cfg或其他内容)重命名为site.cfg

希望有所帮助!