在Spyder中,使用Matplotlib和交互式缩放等绘图

Kur*_*eek 14 python plot matplotlib spyder

我最近从Enthought Canopy切换到Anaconda,并使用Spyder IDE.我注意到当我绘制一些数据时,

import matplotlib.pyplot as plt
plt.figure()
plt.plot(rigs2)
plt.ion()
plt.show()
Run Code Online (Sandbox Code Playgroud)

它在IPython控制台中显示为内联图:

plt.plot()命令的结果

但是,在Enthought中,情节会出现在一个带有缩放,后退和前进按钮的单独窗口中.Spyder有没有办法实现同样的目标?

Nor*_*man 36

从菜单中选择Tools > Preferences,然后IPython console在左侧,那么选项卡的类别列表Graphics顶部,并改变Graphics backend内嵌到如Qt的.
对我而言,这些数字总是会在后台弹出.
(我使用与WinPython 3.4捆绑在一起的Spyder 3.0.0dev.)

  • 感谢Norman,虽然改变工具 - >首选项,因为你建议最初没有工作,我在命令行输入"%matplotlib qt",然后在新窗口中打开图表,可以缩放. (4认同)
  • 是的,"首选项"对话框中的设置仅对新的IPython控制台生效; 任何已打开的控制台选项卡都不受影响. (4认同)

DJV*_*DJV 9

尽管这是一个老问题,但我在不使用 GUI 的情况下解决了同一问题。

仅在控制台中绘图:

%matplotlib inline 
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
Run Code Online (Sandbox Code Playgroud)

回到控制台外的绘图:

%matplotlib qt5
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
Run Code Online (Sandbox Code Playgroud)

没有必要重新启动我的spyder或内核。会话信息:

spyder 3.3.2
python 3.6.8
windows 10. 
Run Code Online (Sandbox Code Playgroud)