python save figure按钮在mac中不起作用,试图解决它失败,怎么办呢?

时间:2012-12-07 04:36:50

标签: python macos matplotlib enthought

我昨天将我的python发行版更新为EPD 7.3-2(64位)。我正在用雪豹工作。 现在,matplotlib的绘图设备至少在两个方面被打破:

  1. “保存”按钮不起作用并使终端或ipython崩溃和
  2. 看到这个数字的唯一方法是把它放在你面前,码头里没有python图标。
  3. 我完成了我的作业,并报告了herehere这些相同的问题。

    我尝试按照说明修复here中给出的内容,但这是我得到的错误:

    $python install_pythonw.py `which python`/../..
    /Library/Frameworks/EPD64.framework/Versions/Current/.Python does not exist; exiting.
    

    确实,我查看了给定的文件夹,但找不到.Python文件。我在这个问题的答案中添加了评论,但到目前为止还没有人回复它:( :( 知道怎么解决这个问题吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

我已经看过几次这个问题了,在某些后端看来这似乎是一个问题。此外,在4或5个绘图之后会话崩溃似乎不正常。特别是,MacOSX后端似乎有些错误。

在您安装EPD时,我认为您的安装不太可能被破坏。 解决方案似乎是使用different backend。您可以尝试使用ipython --pylab一些后端,尝试其功能并查看保存按钮是否有效。您可以尝试以下方法:

ipython --pylab=wx
ipython --pylab=tk
ipython --pylab=osx

最后一个是你现在可能正在使用的选项,所以也许不是最好的。如果您只是致电ipython --pylab,它将使用~/.matplotlib/matplotlibrc文件中的默认后端。找到工作后端后,您可以通过编辑该文件来更改默认值。寻找这样一条线:

backend      :  MacOSX

(您的版本可能有不同的后端。)只需将该设置更改为WXAggTkAggQt4Agg即可。使用--pylab选项,名称略有不同,但它们没有Agg部分。我最喜欢的OSX后端是Qt4Agg后端,但我不认为它附带EPD,保存按钮也不起作用!但WXAggTkAgg应该可以正常工作。

在脚本中更改后端的其他方法是:

import matplotlib
matplotlib.use('WXAgg')

matplotlib.rcParams['backend'] = 'WXAgg'