[英]Completely update matplotlib figure (not appending data)
編輯:我通過完全省略 matplotlib animation 並在初始化數字之前添加plt.ion()
來使其工作。
我有一個可以將數據發送到我的 PC 的測量設備,我可以使用 Python 讀取這些數據。 它每秒發送 100 個數據點。 每次收到這100分,都可以通過調用function來獲得。 我想更新圖形,再次從 X=0 開始。 數據包含 X 和 Y 數據。 在其他 SO 線程中,我發現matplotlib.animation.FuncAnimation
可以有效地更新圖表,但我只找到了將數據附加到圖表的示例。
目前,我的圖表正在重繪,但它只是繪制新點而沒有清除之前的圖表,而且速度非常慢(我無法在繪制時拖動 plot window)。 清晰的 function 只給我留下了灰色的 window。 有誰知道這個問題足夠快的解決方法? 非常感謝!
我目前的實現:
def plot():
freq = np.linspace(f_start, f_stop, points, endpoint=True)
def update(frame):
#for i in range (iterations - 1):
print(frame)
complex_data = vna.data(0)
plotFigure(figInitProperties, freq, Rect2Pol(complex_data))
time.sleep(2) # Wait for all points to be scanned
ani = anim.FuncAnimation(figInitProperties[2], func=update, frames=(10), repeat=False)
plt.show()
plot()
figInitProperties
返回圖形的fig
(大小、標簽、軸、刻度等)。
您可以在更新 function 的開頭使用ax.clear()
或plt.cla()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.