【发布时间】:2014-06-28 09:42:30
【问题描述】:
我在 Windows 7 中从 Python(x,y) 2.7.2.3 升级到 2.7.6.0(很高兴看到我终于可以键入 function_name? 并再次在 Object Inspector 中看到文档字符串)但现在绘图不像以前那样工作了。
以前(Spyder 2.1.9、IPython 0.10.2、matplotlib 1.2.1),例如,当我绘制 this script 时,它会在交互式窗口中并排绘制子图:
现在(Spyder 2.2.5、IPython 1.2.0、Matplotlib 1.3.1)当我尝试绘制内容时,它会将子图作为微小的内联 PNG,即 change in IPython:
所以我进入了选项,发现了这个:
这似乎是说我可以恢复旧的交互式绘图,并排显示 4 个子绘图,但是当我切换到“自动”并尝试绘制某些东西时,它什么也没做。完全没有情节。
如果我将此下拉菜单切换到 Qt,或取消选中“激活支持”,它只会绘制第一个子图或其中的一部分,然后停止:
如何在可以与之交互的单个图中获得 4 个并排子图的旧行为?
【问题讨论】:
-
我认为这应该作为对 pythonxy 的错误报告。我天真的猜测是他们正在使用 pyplot 来处理所有的绘图和被咬的事情(这似乎是错误的,因为他们有自己的 qt 小部件)。
-
@tcaswell 谁是“他们”,他们会用什么来代替 pyplot?
-
你能在 pythonxy 之外重现这个问题吗(直接使用 ipython + qtconsole)?这里没有足够的信息来解决问题所在。
-
我猜这是 Spyder 中的一个错误(Spyder 是 IDE,pythonxy 是发行版)。
-
@tcaswell:啊哈。似乎我的脚本正在产生 matplotlib 错误,然后将这些错误发送到 IPython 控制台以外的其他地方。如果我改用 Qt 控制台,它们就会出现,现在我寻找它,它们会出现在 Spyder 的常规控制台选项卡中。如果我制作一个更简单的脚本,它可以工作,无论是状态机还是面向对象。我认为由于新的内联图,我必须更改一些 IPython 设置。
标签: python matplotlib ipython spyder