可以通过以下步骤实现:
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig = plt.figure()
ax1 = fig.add_subplot(111)
ax2 = ax1.twinx() # 创建一个共享x轴的第二个y轴
def init():
ax1.set_xlim(0, 10) # 设置x轴范围
ax1.set_ylim(0, 10) # 设置第一个y轴范围
ax2.set_ylim(0, 100) # 设置第二个y轴范围
return ax1, ax2
def update(frame):
# 获取新数据
new_data1 = get_new_data1()
new_data2 = get_new_data2()
# 更新第一个y轴的数据和图形
ax1.cla() # 清除第一个y轴的内容
ax1.plot(new_data1, 'r-', label='Data 1')
ax1.set_ylabel('Data 1')
# 更新第二个y轴的数据和图形
ax2.cla() # 清除第二个y轴的内容
ax2.plot(new_data2, 'b-', label='Data 2')
ax2.set_ylabel('Data 2')
return ax1, ax2
ani = animation.FuncAnimation(fig, update, frames=range(10), init_func=init, blit=True)
plt.show()
在上述代码中,get_new_data1()
和get_new_data2()
是获取新数据的函数,你可以根据实际情况进行修改。
这个动画示例中,我们创建了一个包含两个y轴的图形,每当新数据到达时,我们清除原有的数据并重新绘制图形。通过animation.FuncAnimation
函数,我们可以实现动画的更新和播放。
推荐的腾讯云相关产品:腾讯云服务器(CVM)和云函数(SCF)。
领取专属 10元无门槛券
手把手带您无忧上云