Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python matplotlib赢得';t画蟒蛇3_Python_Python 3.x_Matplotlib_Installation_Backend - Fatal编程技术网

Python matplotlib赢得';t画蟒蛇3

Python matplotlib赢得';t画蟒蛇3,python,python-3.x,matplotlib,installation,backend,Python,Python 3.x,Matplotlib,Installation,Backend,我在virtualenv中成功安装了matplotlib。现在我想让它画出来。我知道如何更改后端,但我在确定要将其更改为什么方面遇到了很多困难 有没有人能让它完全与python3协同工作?如果是,如何进行 我试过很多东西。我已经循环了所有的后端,看看所有的投诉是什么,而不是我只是想让其中一个工作 另外可能值得注意的是,我的目标是将其集成到一个金字塔应用程序中 以下是迄今为止所有不同后端的情况: Agg:这是默认的后端。它不会画画 GTK:需要pygtk,显然还没有移植到python3 GTKA

我在virtualenv中成功安装了matplotlib。现在我想让它画出来。我知道如何更改后端,但我在确定要将其更改为什么方面遇到了很多困难

有没有人能让它完全与python3协同工作?如果是,如何进行

我试过很多东西。我已经循环了所有的后端,看看所有的投诉是什么,而不是我只是想让其中一个工作

另外可能值得注意的是,我的目标是将其集成到一个金字塔应用程序中

以下是迄今为止所有不同后端的情况:

  • Agg:这是默认的后端。它不会画画
  • GTK:需要pygtk,显然还没有移植到python3
  • GTKAgg:同上
  • GTKCairo:表示“所需包gtk”假设与上述内容类似
  • FltkAgg:看起来不像是python3版本。尽管在python3ui常见问题中提到了它。我想那只是一种唤醒。天哪
  • MacOSX:我在运行ubuntu。假定不适当
  • QtAgg:需要pyqt。参见Qt4Agg
  • Qt4Agg:请参阅
  • TkAgg:ImportError:无法导入名称\u TkAgg。不过,我可以在解释器中运行import-tkinter,所以我还不确定有什么问题
  • WX:ImportError:Matplotlib后端_WX和后端_wxagg需要wxversion,但找不到该版本
  • WXAgg:同上
  • CoCoAgg:ImportError:CoCoCoCaAgg后端需要安装PyObjC
  • GTK3Cairo:ImportError:GTK3后端需要安装pygobject。我试图安装它,但当我试图用正确的python配置它时,它会抱怨缺少头
  • GTK3Agg:没有名为cairo的模块。但我想我会遇到与上面相同的问题
  • cairo:cairo后端要求安装pycairo
  • emf:您必须首先从安装pyemf。看起来它应该做视窗的东西,所以这可能不是一个好的选择
  • gdk:没有名为gobject的模块
  • pdf:运行但不绘制
  • pgf:同上
  • 附言:同上
  • svg:同上
  • 模板:同上
我用来测试后端的脚本是:

import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.show()
到目前为止,我已经花了太多的时间试图让python3.2和qt4玩得更好,而我似乎在每一个方向上都遇到了问题。因此,与其继续我的试错法,我想问:

  • Python3.2和Pyramid的最佳选择是什么
  • 我该怎么做
  • 在此期间,我将继续尝试和错误的事情,并更新我的问题,因为我去

    关于我正在尝试的东西的注释

    对于TkAgg:

    由于tkinter导入正确,我假设它安装正确(如果我错了,我想有办法测试它吗?)。这家伙也有类似的问题,但我确信他的设置与我的不同。解决方案是在python3.2站点包目录的内部找到tkagg.py,并编辑有问题的import语句。我发现很难相信matplotlib已经坏了(而且我不能运行建议的修改后的代码…)

    对于WX材料:

    说现在还不支持python3。而且wxPython在他们的网站上没有提到python3,所以我想这是不可能的。选项不足:/

    可可粉:

    同上:

    电动势:


    同上:

    Matplotlib似乎已经向Python3迈出了一大步。(+numpy 1.7.0b2)正在为我工作

    • Python 3.2.2(Linux Mint 12上的virtualenv)
    • Python 3.3.0(从源代码进行本地安装)
    在这两种情况下,matplotlib都报告使用“TkAgg”作为后端


    不幸的是,我不知道这是否/如何与Pyramid一起工作。

    我遇到了完全相同的问题,但经过许多努力,我成功地使TkAgg工作(这导致了_TkAgg的导入错误)。有点晚了,但有人可能会发现它很有用

    FWIW I解决问题如下(使用TkAgg):

    • 从软件包管理器安装的tk dev
    • 从软件包管理器重新安装了python3 tk
    • 从源代码处重建并重新安装matplotlib
    • (当然,在matplotrc中设置TkAgg)
    如果您认为已正确安装了
    tk dev
    python3 tk
    ,则需要重建并重新安装matplotlib,以便它在
    后端
    目录中生成
    \u tkagg.py


    我正在LM14上使用Python3.3(numpy1.7)。但是我认为它应该在Ubuntu/Python3.2上运行,我一直在做Python3.3.2和matplotlib的源代码构建。如上所述,TkAgg有效。如果您从源代码构建所有内容:

  • sudo-apt-get-install-tk-dev
  • 重新生成python3(清除;/configure;生成)
  • 清除matplotlib(从virtualenv中删除egg,从~/.config/matplotlib中删除缓存对象)
  • 从源代码(rm-r build/;python setup.py build;python setup.py install)重建matplotlib
  • 终于看到那个愚蠢的盒子出现在我的x=y线上


    小时数……

    我写了一个答案,确保Ubuntu 16.04中的Python3 virtualenv中的
    matplotlib
    使用
    TkAgg
    后端,这在这里很有用。结果是安装
    tk-dev
    ,激活virtualenv并在virtualenv中重新安装
    matplotlib

    sudo apt install tk-dev
    source venv/bin/activate
    pip --no-cache-dir install -U --force-reinstall matplotlib
    

    python-c'将matplotlib作为mpl导入;print(mpl.get_backend())“
    现在应该说
    TkAgg
    ,对我来说,以下方法有效:

    • 停用
    • sudo apt get install python3 matplotlib libfreetype6 dev
    • (激活virtualenv)source/home/
    • pip install numpy matplotlib
      (如果已经安装了,可以先卸载然后安装,也可以尝试在此时创建一个新的venv)
    • pip安装——升级venv内部的pip
      $ lsb_release -a (gives..)