matplotlib – 关于cygwin的ipython –pylab:TclError:没有显
发布时间:2020-12-20 13:33:43 所属栏目:Python 来源:网络整理
导读:我最近按照说明安装了i python: http://ardiyu07.blogspot.com/2012/04/ipython-012-installation-in-cygwin.html. 当我运行’ipython –pylab’时,我收到以下错误消息.我已经google了一下,发现有关此错误的帖子,但在不同的背景下.当我使用–pylab参数启动i
|
我最近按照说明安装了i
python:
http://ardiyu07.blogspot.com/2012/04/ipython-012-installation-in-cygwin.html.
当我运行’ipython –pylab’时,我收到以下错误消息.我已经google了一下,发现有关此错误的帖子,但在不同的背景下.当我使用–pylab参数启动ipython时会出现.我知道这与matplotlib gui交互有关,但不确定究竟是什么.我很欣赏这个指导. $ipython --pylab
Python 2.7.3 (default,Dec 18 2012,13:50:09)
Type "copyright","credits" or "license" for more information.
IPython 0.13.1 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object',use 'object??' for extra details.
Welcome to pylab,a matplotlib-based Python environment [backend: TkAgg].
For more information,type 'help(pylab)'.
[TerminalIPythonApp] GUI event loop or pylab initialization failed
---------------------------------------------------------------------------
TclError Traceback (most recent call last)
/usr/lib/python2.7/site-packages/IPython/core/interactiveshell.pyc in enable_pylab(self,gui,import_all)
2780 # Now we must activate the gui pylab wants to use,and fix %run to take
2781 # plot updates into account
-> 2782 self.enable_gui(gui)
2783 self.magics_manager.registry['ExecutionMagics'].default_runner =
2784 mpl_runner(self.safe_execfile)
/usr/lib/python2.7/site-packages/IPython/lib/inputhook.pyc in enable_gui(gui,app)
526 e = "Invalid GUI request %r,valid ones are:%s" % (gui,guis.keys())
527 raise ValueError(e)
--> 528 return gui_hook(app)
529
/usr/lib/python2.7/site-packages/IPython/lib/inputhook.pyc in enable_tk(self,app)
322 if app is None:
323 import Tkinter
--> 324 app = Tkinter.Tk()
325 app.withdraw()
326 self._apps[GUI_TK] = app
/usr/lib/python2.7/lib-tk/Tkinter.pyc in __init__(self,screenName,baseName,className,useTk,sync,use)
1683 baseName = baseName + ext
1684 interactive = 0
-> 1685 self.tk = _tkinter.create(screenName,interactive,wantobjects,use)
1686 if useTk:
1687 self._loadtk()
TclError: no display name and no $DISPLAY environment variable
解决方法
在cygwin终端输入startxwin(你需要从cygwin setup.exe获得X11库)然后你可以从新的终端窗口运行ipython –pylab和一个命令,如plot(range(10)),这将打开一个新的窗口,但你需要调用plt.draw()来显示与原生pylab不同的绘图,与原生pylab相比,对cygwin中的绘图窗口的控制也很差.
我不需要在此过程中编辑任何设置文件,您可能需要’pip uninstall matplotlib’并重新安装,直到您通过cygwin setup.exe安装了所需的库(tkinter,我相信需要X11-devel库) . 通过ez_setup.py获取setuptools wget http://peak.telecommunity.com/dist/ez_setup.py python ez_setup.py easy_install pip pip install numpy pip install ipython pip install matplotlib (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
