更新 python 的 matplotlib 中的绘图
Updating a plot in python's matplotlib
我正在尝试在 matplotlib 中绘制流数据。我可以使用交互模式和 set_ydata
函数更新绘图。它具有动画效果,并且在循环结束之前一切看起来都很好。然后 python 内核崩溃,我收到此消息:
C:\Conda\lib\site-packages\matplotlib\backend_bases.py:2437:
MatplotlibDeprecationWarning: Using default event loop until function specific to
this GUI is implemented
warnings.warn(str, mplDeprecation)
代码如下:
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 10, 0.1)
y = np.sin(x)
plt.ion() #interactive mode on
ax = plt.gca()
line, = ax.plot(x,y)
ax.set_ylim([-5,5])
for i in np.arange(100):
line.set_ydata(y)
plt.draw()
y = y*1.01
plt.pause(0.1)
谁能告诉我为什么这是崩溃而不是退出循环?我正在使用 Python 3 在 Jupyter 中执行此操作。当然,如果有更好的方法来执行此操作,我很想听听。谢谢!
此代码改编自How to update a plot in matplotlib?
我在 python 3.4
中使用 Jupyter
笔记本中的 mac_osx backend
效果很好。
也许您想在末尾添加 plt.close()
以保持整洁并防止挂断?
我正在尝试在 matplotlib 中绘制流数据。我可以使用交互模式和 set_ydata
函数更新绘图。它具有动画效果,并且在循环结束之前一切看起来都很好。然后 python 内核崩溃,我收到此消息:
C:\Conda\lib\site-packages\matplotlib\backend_bases.py:2437: MatplotlibDeprecationWarning: Using default event loop until function specific to this GUI is implemented warnings.warn(str, mplDeprecation)
代码如下:
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 10, 0.1)
y = np.sin(x)
plt.ion() #interactive mode on
ax = plt.gca()
line, = ax.plot(x,y)
ax.set_ylim([-5,5])
for i in np.arange(100):
line.set_ydata(y)
plt.draw()
y = y*1.01
plt.pause(0.1)
谁能告诉我为什么这是崩溃而不是退出循环?我正在使用 Python 3 在 Jupyter 中执行此操作。当然,如果有更好的方法来执行此操作,我很想听听。谢谢!
此代码改编自How to update a plot in matplotlib?
我在 python 3.4
中使用 Jupyter
笔记本中的 mac_osx backend
效果很好。
也许您想在末尾添加 plt.close()
以保持整洁并防止挂断?