【问题标题】:In Spyder, plot using Matplotlib with interactive zoom, etc在 Spyder 中,使用具有交互式缩放等功能的 Matplotlib 绘图
【发布时间】:2016-08-10 13:13:51
【问题描述】:

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

import matplotlib.pyplot as plt
plt.figure()
plt.plot(rigs2)
plt.ion()
plt.show()

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

然而,在 Enthought 中,过去的情节会显示在带有缩放、后退和前进按钮的单独窗口中。有没有办法在 Spyder 中实现同样的效果?

【问题讨论】:

标签: python matplotlib plot spyder


【解决方案1】:

从菜单中选择Tools > Preferences,然后选择左侧类别列表中的IPython console,然后选择顶部的标签Graphics,并将Graphics backend内联 更改为例如Qt
不过对我来说,这些数字总是会在背景中弹出。
(我使用与 WinPython 3.4 捆绑的 Spyder 3.0.0dev。)

【讨论】:

  • 感谢 Norman,虽然按照您的建议更改工具 -> 首选项最初不起作用,但我在命令行中输入了“%matplotlib qt”,随后在新窗口中打开了绘图,可以缩放。
  • 是的,Preferences 对话框中的设置仅对新的 IPython 控制台生效;任何已打开的控制台选项卡均不受影响。
  • 是的,Norman 是对的:只需在工具 > 首选项中更改图形后端后重新启动 Spyder。无需运行“%matplotlib qt”。
【解决方案2】:

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

仅在控制台中绘图:

%matplotlib inline 
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')

回到控制台外绘图:

%matplotlib qt5
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')

无需重新启动我的spyder 或内核。 会话信息:

spyder 3.3.2
python 3.6.8
windows 10. 

【讨论】:

    【解决方案3】:

    记得重启内核就可以了。

    【讨论】:

      【解决方案4】:

      您可能不需要重新启动 spyder。只需转到工具菜单并重新启动内核即可。然后您应该显示该图。请,这是在您必须为图形设置适当的首选项之后

      【讨论】:

      • 什么是“适当的图形偏好”?
      • '适当的首选项'意味着从工具 - 首选项 - 将图形后端设置为'内联'或'自动'...内核重启选项也在'控制台'菜单中
      猜你喜欢
      • 2012-05-29
      • 2017-04-17
      • 2012-06-26
      • 2018-03-13
      • 2014-06-28
      • 2021-01-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多