Python-使用matplotlib.pyplot实现实时数据动态显示
matplotlib.pyplot是一个常用的Python绘图库,它提供了丰富的绘图功能。通过合理运用,我们可以实现数据的实时动态显示。
import matplotlib.pyplot as plt
import numpy as np
import time
plt.ion() # 开启交互模式
fig, ax = plt.subplots()
x = np.arange(0, 10, 0.1)
y = np.sin(x)
line, = ax.plot(x, y)
for i in range(100):
y = np.sin(x + i/10.0)
line.set_ydata(y) # 更新y轴数据
plt.draw() # 重绘
plt.pause(0.1) # 暂停0.1秒
plt.ion()
:开启交互模式,使得绘制的图像可以实时更新。fig, ax = plt.subplots()
:创建一个绘图窗口,并返回figure和axes对象。line, = ax.plot(x, y)
:绘制一条初始曲线,并返回line对象,方便后续更新。line.set_ydata(y)
:更新line对象的y轴数据。plt.draw()
:重新绘制图像。plt.pause(0.1)
:暂停0.1秒,控制更新频率。
import matplotlib.pyplot as plt
import numpy as np
import time
plt.ion() # 开启交互模式
fig, ax = plt.subplots()
x = np.arange(0, 10, 0.1)
y = np.sin(x)
line, = ax.plot(x, y)
for i in range(100):
y = np.sin(x + i/10.0)
line.set_ydata(y)
plt.draw()
plt.pause(0.1)
plt.ion()
非常重要,它使得绘图窗口可以实时更新。line.set_ydata(y)
来更新曲线的数据。plt.draw()
来重新绘制图像。plt.pause()
可以控制更新频率,数值越小,更新越快。ax.set_xlim()
和ax.set_ylim()
来动态调整坐标轴范围。plt.title()
、plt.xlabel()
、plt.ylabel()
等函数添加标题和坐标轴标签。matplotlib.animation
模块可以将动态图保存为动画文件。通过灵活运用matplotlib.pyplot,你可以创建各种各样的动态图表,实现数据可视化的需求。
想深入了解吗? 您可以提出更具体的问题,例如:
我将竭诚为您解答。