要使用Matplotlib創建動態圖表,您可以使用FuncAnimation
類
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
# 初始化畫布和子圖
fig, ax = plt.subplots()
# 定義一個空列表用于存儲數據
x_data, y_data = [], []
# 定義一個函數來更新數據和圖形
def update(frame):
# 在這里添加您的數據生成或獲取數據的代碼
x_data.append(frame)
y_data.append(np.random.randint(0, 100))
# 清除當前的子圖
ax.clear()
# 繪制新的數據
ax.plot(x_data, y_data)
# 設置x軸和y軸的標簽
ax.set_xlabel('Time')
ax.set_ylabel('Value')
# 設置標題
ax.set_title('Dynamic Chart using Matplotlib')
# 創建FuncAnimation對象
ani = FuncAnimation(fig, update, frames=range(100), interval=100, blit=False)
# 顯示圖形
plt.show()
在這個例子中,我們首先導入了所需的庫,然后創建了一個畫布和子圖。我們還定義了兩個空列表x_data
和y_data
,用于存儲數據。
接下來,我們定義了一個名為update
的函數,該函數將在每一幀被調用。在這個函數中,我們添加新的數據點到x_data
和y_data
列表中。然后,我們清除子圖并繪制新的數據。我們還設置了x軸和y軸的標簽、標題。
然后,我們創建了一個FuncAnimation
對象,傳遞給它我們的畫布、更新函數、幀數(在這種情況下是0到99),以及每幀之間的時間間隔(以毫秒為單位)。最后,我們使用plt.show()
顯示圖形。
這將創建一個動態圖表,其中包含隨機生成的數據。您可以根據需要修改此代碼以適應您的數據和需求。