1.设置合适的 Matplotlib 后端
在 PyCharm 中,有时需要手动指定 Matplotlib 后端。你可以尝试在脚本的最开始加入以下代码,强制使用 TkAgg 后端,这样可以保证图形更新的实时性:
import matplotlib
matplotlib.use('TkAgg') # 指定 TkAgg 后端
import matplotlib.pyplot as plt
import numpy as np
# 启用交互模式
plt.ion()
# 创建数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 创建图形
fig, ax = plt.subplots()
# 绘制数据
ax.plot(x, y)
# 更新图形
plt.draw() # 强制刷新图形
plt.pause(0.1) # 暂停,保持图形显示
# 继续更新图形
ax.plot(x, np.cos(x), color='r')
# 再次刷新图形
plt.draw() # 强制刷新图形
plt.pause(0.1) # 暂停,保持图形显示
# 绘制结束,关闭交互模式
plt.ioff() # 关闭交互模式
plt.show() # 最终显示图形
2.启用交互模式
首先,你需要在代码开头调用 plt.ion() 来启用交互模式。然后,每次调用 plt.plot()
、plt.scatter()
或其他绘图函数时,图形会自动更新
如上面的代码所示
3.打断点调试
在 PyCharm 中,你可以将代码逐行调试,并观察图形如何在每一步发生变化