我想要遵循位於here的基本動畫教程,並調整它以顯示一個已經計算好的數據集,而不是每幀評估一個函數,但是會陷入困境。我的數據集涉及一段時間內的XY座標,包含在列表satxpos
和satypos
中我試圖創建一個動畫,以便從數據集開始處到最後一行開始追蹤一行,每0.1秒顯示一個新點。任何幫助,我要去哪裏錯了?matplotlib動畫散點圖
from matplotlib import pyplot as plt
from matplotlib import animation
import numpy as np
Code here creates satxpos and satypos as lists
fig = plt.figure()
ax = plt.axes(xlim=(-1e7,1e7), ylim = (-1e7,1e7))
line, = ax.plot([], [], lw=2)
def init():
line.set_data([], [])
return line,
def animate(i):
line.set_data(satxpos[i], satypos[i])
return line,
anim = animation.FuncAnimation(fig, animate, init_func=init,
frames = len(satxpos), interval = 1, blit=True)
編輯:代碼運行沒有錯誤,但生成一個空白繪圖窗口,沒有顯示點/線,沒有任何動畫。該數據集正確生成並在靜態圖中可以正常顯示。
這是你的全部代碼嗎?運行它時是否收到任何錯誤消息? – cosinepenguin
這不是所有的代碼,生成satxpos和satypos的部分都會創建有效的數據集。我可以將這些視爲一個靜態的情節。代碼運行時沒有錯誤,但生成的圖只是一個空白窗口,沒有顯示動畫或點/線 –
您在代碼中的某處使用'anim.save()'和'plt.show()'沒有分享? – cosinepenguin