注意:我在OS X(Lion)中看到了此处描述的问题。
Matplotlib是一个用于数据可视化的python库。当我尝试在屏幕上显示图形时,显示图形的窗口仍然隐藏在其他窗口后面。唯一可以看到的方法是隐藏,最小化或移开所有其他窗口。这使得matplotlib的交互式工作变得不必要地繁琐。
FWIW,产生这些结果的一种方法如下所示;显示的所有步骤(包括对ipython的调用)都来自matplotlib教程:
% ipython --pylab
...
In [1]: import matplotlib.pyplot as plt
In [2]: plt.plot([1, 3, 2, 4])
Out[3]: [<matplotlib.lines.Line2D at 0x106aabd90>]
此时,如果没有其他窗口可以隐藏它(这是不常见的),可以看到带有图形的窗口出现,但它没有得到焦点。即使单击一下,它也会出现没有焦点的窗口(例如左上角的三个按钮保持浅灰色,而不是转动通常的红黄绿色。)
另外,FWIW,我观察到完全相同的行为有多种安装方式(在同一台机器上)python + numpy + matplotlib + ipython,包括使用系统提供的安装python,那些使用homebrew
安装的python的那些,或那些使用python直接从源安装到我的主目录下的位置的那些。
如果重要,我已为the buggy Tcl and Tk frameworks that comes with Lion安装了ActiveTcl替代品。
(相反,当我在Ubuntu中运行上面的内容时,图形窗口会显示焦点,并且会显示在所有其他窗口之上,应该如此。)
关于可能发生的事情或我能做些什么的任何想法?
注意:我知道Enthought的EPD,但这不是一个选择,因为我会详细说明。
答案 0 :(得分:1)
不幸的是,这是在OS X上使用Aqua Tk的基于Tkinter的应用程序的一般问题。请参阅here进行讨论,应用程序可以做些什么来解决它,以及建议的通用解决方案。