【发布时间】:2014-09-03 22:05:13
【问题描述】:
我在最近安装的 Win7/Cygwin 上启动和运行 matplotlib 时遇到问题。
我使用 Cygwin 包管理器安装了 python 2.7.8,但我尝试过的镜像似乎不包含 ipython 或 matplotlib 的包。我已经使用 Cygwin 安装了必备包
pkg-config ghostscript libfreetype-devel libpng-devel python-gtk2.0 libgtk2.0-devel gcc-g++ git
(我找到的列表here) 并从他们的 git 存储库安装了 matplotlib 和 ipython:
git clone git://github.com/matplotlib/matplotlib.git
cd matplotlib
python setup.py install
cd ..
git clone https://github.com/ipython/ipython.git
cd ipython
python setup.py install
我可以通过手动调用show() 从标准python 提示符成功绘图,或者通过手动调用show() 从ipython 会话(在没有--pylab 的情况下启动)成功绘图。在这两种情况下,show() 都会阻止终端输入,直到绘图窗口关闭,关闭图形会重置它,以便后续绘图命令以空白画布开始。
如果我在 ipython 中运行 ipython --pylab 或运行 pylab.ion(),那么绘图命令会自动打开画布,就像我在 MacOS 上习惯的那样 --- 但画布从不包含任何可见轴,只有灰色框架!在这种情况下,show() 什么都不做。图确实似乎是在某处构建的:当我添加直线和曲线时,我可以调用gca().get_children() 并看到更多的图被添加到轴上;我也可以使用gcf().save_fig('foo.png') 将合理的输出放到一个文件中。但由于某种原因,与 X 窗口的通信中断了。
我相信我正在使用 TK 后端;我不赞成这种选择,但不清楚我应该如何安装其他后端。
我将不胜感激以我的交互式绘图结束的任何指导。
【问题讨论】:
标签: python matplotlib cygwin