【问题标题】:Matplotlib in Spyder: plot shows immediatelySpyder 中的 Matplotlib:绘图立即显示
【发布时间】:2016-05-19 16:07:34
【问题描述】:

我正在尝试在 Spyder 中使用 matplotlib.pyplot 包:每次我绘制一些东西时,就像

plt.plot([1,2,3,4])

情节立即显示,无需调用 .show()。这让我很困扰,因为如果我进行调整,比如

plt.ylab('try this')

它显示了一个带有标签但没有数据的全新图。
我错过了什么?

Python 3.4.3
Spyder 3.0.0dev
Qt 5.5.1

【问题讨论】:

  • 还有一件事:如果我输入 plt.show() 它不会绘制任何东西。
  • 您可以使用 plt.ion() 和 plt.ioff() 切换交互模式,但我认为问题不在于它会立即显示情节。当我尝试重现您的问题时,我现有情节中的标签会发生变化(使用 plt.ylabel() (错字?))。检查首选项 - 控制台 - 外部模块中的设置。 matplotlib 的 GUI 后端对我来说是 Qt4Agg。
  • 你说得对,问题出在设置上。后端设置为“内联”,我将其更改为“Qt”,现在它工作正常。谢谢!

标签: python matplotlib plot spyder


【解决方案1】:

似乎所有 pyplot functions 都支持 hold 布尔值。你试过吗?它应该立即停止绘图。

其他 kwargs:hold = [True|False] 覆盖默认保持状态

【讨论】:

  • plt.plot([1,2,3,4], hold=True) 和 plt.plot([1,2,3,4], hold=False) 都立即返回图形.
  • 您是否尝试将其添加为子图? api 页面上的大多数示例都使用它。
  • 我在该页面上尝试了一个示例,但它不起作用。每次我进入子图时,Spyder 都会在屏幕上显示它。最后,当我输入 plt.show() 时,什么也没有出现。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-22
  • 1970-01-01
  • 2012-06-05
  • 2020-08-17
  • 2017-05-11
  • 2019-12-25
  • 1970-01-01
相关资源
最近更新 更多