我在 virtualenv 中成功安装了 matplotlib。现在我正试图让它画出来。我知道如何更改后端,但是在弄清楚将其更改为什么时遇到了很多麻烦。
有没有人设法让它完全与 python3 一起工作?如果是,如何?
我已经尝试了很多东西。我已经循环浏览了所有后端以查看所有投诉是什么,而不是我试图让其中一个工作。
另外可能值得注意的是,我的目标是将它集成到 Pyramid 应用程序中。
以下是迄今为止所有不同后端发生的情况:
- Agg:这是默认后端。它不画
- GTK:需要 pygtk 显然尚未移植到 python3
- GTKAgg:同上
- GTKCairo:说“必需的包 gtk”假设类似于上述内容
- FltkAgg:看起来没有 python3 版本。尽管它在 python3 UI FAQ 中被提及。我想那只是一个刺激。天哪
- MacOSX:我正在运行 ubuntu。假定不适当
- QtAgg:需要 pyqt。见 Qt4Agg
- Qt4Agg:请参阅在 virtualenv 中安装 PyQt4
- TkAgg:ImportError:无法导入名称 _tkagg。我可以在解释器中运行 import tkinter,所以我还不确定是什么坏了
- WX: ImportError: Matplotlib backend_wx and backend_wxagg require wxversion,没找到
- WXAgg:同上
- CocoaAgg:ImportError:CococaAgg 后端需要安装 PyObjC!
- GTK3Cairo : ImportError: GTK3 后端需要安装 pygobject。我尝试安装它,但是当我尝试使用正确的 python 配置它时,它抱怨缺少标头
- GTK3Agg:没有名为 cairo 的模块。但我认为我会遇到与上述相同的问题
- cairo:Cairo 后端要求安装 pycairo
- emf:必须先从http://pyemf.sf.net安装 pyemf 。看起来它应该做 windowsey 的东西所以这可能不是一个好的选择
- gdk:没有名为 gobject 的模块
- pdf:运行但不绘制
- pgf:同上
- ps:同上
- svg: 同上
- 模板:同上。
我用来测试后端的脚本是:
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.show()
到目前为止,我已经花了太多时间试图让 python3.2 和 qt4 玩得很好,而且我似乎每次转身都遇到了问题。因此,我不想继续我的反复试验方法,而是想问:
- Python3.2 和 Pyramid 的最佳选择是什么?
- 我该如何实现?
与此同时,我将继续试错,并随时更新我的问题。
关于我正在尝试的东西的注释
对于 TkAgg:
由于 tkinter 正确导入,我假设它已正确安装(如果我错了,我想有办法测试它吗?)。这家伙http://ask.sagemath.org/question/626/sage-python-import-matplotlib-no-module-named有类似的问题,但我确定他的设置与我的不同。解决方案是在 python3.2 站点包目录的内部找到 tkagg.py 并编辑有问题的导入语句。我发现很难相信 matplotlib 的交付失败了(而且我无法运行建议的修改后的代码......)
对于 WX 的东西:
wxPython for Python 3表示尚不支持 python3。wxPython 在他们的网站上也没有提到 python3,所以我想这是不行的。用完了选项:/
可可:
电磁场:
同上: http: //pyemf.sourceforge.net/README.html