
- Matplotlib 基礎
- Matplotlib - 首頁
- Matplotlib - 簡介
- Matplotlib - 與 Seaborn 的比較
- Matplotlib - 環境設定
- Matplotlib - Anaconda 發行版
- Matplotlib - Jupyter Notebook
- Matplotlib - Pyplot API
- Matplotlib - 簡單繪圖
- Matplotlib - 儲存圖形
- Matplotlib - 標記
- Matplotlib - 圖形
- Matplotlib - 樣式
- Matplotlib - 圖例
- Matplotlib - 顏色
- Matplotlib - 顏色對映
- Matplotlib - 顏色對映歸一化
- Matplotlib - 選擇顏色對映
- Matplotlib - 色標
- Matplotlib - 文字
- Matplotlib - 文字屬性
- Matplotlib - 子圖示題
- Matplotlib - 影像
- Matplotlib - 影像蒙版
- Matplotlib - 註釋
- Matplotlib - 箭頭
- Matplotlib - 字型
- Matplotlib - 什麼是字型?
- 全域性設定字型屬性
- Matplotlib - 字型索引
- Matplotlib - 字型屬性
- Matplotlib - 刻度
- Matplotlib - 線性和對數刻度
- Matplotlib - 對稱對數和 Logit 刻度
- Matplotlib - LaTeX
- Matplotlib - 什麼是 LaTeX?
- Matplotlib - LaTeX 用於數學表示式
- Matplotlib - LaTeX 在註釋中的文字格式化
- Matplotlib - PostScript
- 在註釋中啟用 LaTeX 渲染
- Matplotlib - 數學表示式
- Matplotlib - 動畫
- Matplotlib - 藝術家
- Matplotlib - 使用 Cycler 進行樣式設定
- Matplotlib - 路徑
- Matplotlib - 路徑效果
- Matplotlib - 轉換
- Matplotlib - 刻度和刻度標籤
- Matplotlib - 弧度刻度
- Matplotlib - 日期刻度
- Matplotlib - 刻度格式化程式
- Matplotlib - 刻度定位器
- Matplotlib - 基本單位
- Matplotlib - 自動縮放
- Matplotlib - 反轉軸
- Matplotlib - 對數軸
- Matplotlib - Symlog
- Matplotlib - 單位處理
- Matplotlib - 帶單位的橢圓
- Matplotlib - 脊柱
- Matplotlib - 軸範圍
- Matplotlib - 軸刻度
- Matplotlib - 軸刻度
- Matplotlib - 格式化軸
- Matplotlib - Axes 類
- Matplotlib - 雙軸
- Matplotlib - Figure 類
- Matplotlib - 多圖
- Matplotlib - 網格
- Matplotlib - 面向物件介面
- Matplotlib - PyLab 模組
- Matplotlib - Subplots() 函式
- Matplotlib - Subplot2grid() 函式
- Matplotlib - 固定藝術家
- Matplotlib - 手動等值線
- Matplotlib - 座標報告
- Matplotlib - AGG 過濾器
- Matplotlib - 帶狀框
- Matplotlib - 填充螺旋線
- Matplotlib - Findobj 演示
- Matplotlib - 超連結
- Matplotlib - 影像縮圖
- Matplotlib - 使用關鍵字繪圖
- Matplotlib - 建立 Logo
- Matplotlib - 多頁 PDF
- Matplotlib - 多處理
- Matplotlib - 列印標準輸出
- Matplotlib - 複合路徑
- Matplotlib - Sankey 類
- Matplotlib - MRI 與 EEG
- Matplotlib - 樣式表
- Matplotlib - 背景顏色
- Matplotlib - Basemap
- Matplotlib 事件處理
- Matplotlib - 事件處理
- Matplotlib - 關閉事件
- Matplotlib - 滑鼠移動
- Matplotlib - 點選事件
- Matplotlib - 滾動事件
- Matplotlib - 按鍵事件
- Matplotlib - 選擇事件
- Matplotlib - 透鏡
- Matplotlib - 路徑編輯器
- Matplotlib - 多邊形編輯器
- Matplotlib - 定時器
- Matplotlib - Viewlims
- Matplotlib - 縮放視窗
- Matplotlib 小部件
- Matplotlib - 游標小部件
- Matplotlib - 帶註釋的游標
- Matplotlib - 按鈕小部件
- Matplotlib - 複選框
- Matplotlib - 套索選擇器
- Matplotlib - 選單小部件
- Matplotlib - 滑鼠游標
- Matplotlib - 多游標
- Matplotlib - 多邊形選擇器
- Matplotlib - 單選按鈕
- Matplotlib - RangeSlider
- Matplotlib - 矩形選擇器
- Matplotlib - 橢圓選擇器
- Matplotlib - 滑塊小部件
- Matplotlib - 跨度選擇器
- Matplotlib - 文字框
- Matplotlib 繪圖
- Matplotlib - 條形圖
- Matplotlib - 直方圖
- Matplotlib - 餅圖
- Matplotlib - 散點圖
- Matplotlib - 箱線圖
- Matplotlib - 小提琴圖
- Matplotlib - 等值線圖
- Matplotlib - 3D 繪圖
- Matplotlib - 3D 等值線
- Matplotlib - 3D 線框圖
- Matplotlib - 3D 表面圖
- Matplotlib - Quiver 圖
- Matplotlib 有用資源
- Matplotlib - 快速指南
- Matplotlib - 有用資源
- Matplotlib - 討論
Matplotlib - 定時器
在一般的計算機程式設計中,**定時器**指的是一種允許使用者在預定義的時間間隔內安排特定任務或程式碼片段執行的機制。定時器在各種應用程式中都很有用,可以實現重複操作的自動化、定期更新或基於時間相關條件觸發事件。
Matplotlib 中的定時器
Matplotlib 定時器是強大的功能,使您能夠將週期性事件整合到繪圖中。並且設計為獨立於特定的圖形使用者介面 (GUI) 後端工作。
要利用 Matplotlib 定時器功能,**figure.canvas.new_timer()** 函式作為將定時器與各種 GUI 事件迴圈整合的關鍵元件。雖然它的呼叫簽名可能看起來不尋常,但由於這種理解,呼叫簽名至關重要(如果您的回撥函式不接受引數或關鍵字引數,則需要顯式指定空序列和字典)。
以下是語法:
語法
timer = figure.canvas.new_timer(interval=5000, callbacks=[(callback_function, [], {})]) timer.start()
此語法建立一個間隔為 5 秒的定時器,演示了定時器與 Matplotlib 繪圖的整合。
示例
這是一個示例,它演示了在 Matplotlib 中使用定時器的簡單用法。它設定了一個定時器,每 5 秒將“Matplotlib 定時器事件”列印到控制檯。這展示瞭如何在繪圖中使用定時器執行週期性任務。
import matplotlib.pyplot as plt # Function to handle the timer event def handle_timer_event(): print('Matplotlib Timer Event') # Create a new Matplotlib figure and axis custom_fig, custom_ax = plt.subplots(figsize=(7, 4)) # Create a timer with a 5000 milliseconds interval custom_timer = custom_fig.canvas.new_timer(interval=5000, callbacks=[(handle_timer_event, [], {})]) # Start the timer custom_timer.start() plt.show()
輸出
執行上述程式後,您將獲得以下輸出:

Matplotlib Timer Event Matplotlib Timer Event Matplotlib Timer Event Matplotlib Timer Event Matplotlib Timer Event Matplotlib Timer Event
觀看下面的影片以觀察此示例的工作原理。

用於即時更新的定時器
定時器可用於在繪圖中實現即時更新,增強視覺化的動態特性。
示例
在示例中,定時器用於以 500 毫秒的間隔更新圖形的標題,其中包含當前時間戳。這表明,如何在視覺化中使用定時器進行動態、時間敏感的更新。
from datetime import datetime import matplotlib.pyplot as plt import numpy as np # Function to update the title with the current timestamp def update_title(axes): axes.set_title(datetime.now()) axes.figure.canvas.draw() # Create a Matplotlib figure and axis fig, ax = plt.subplots(figsize=(7, 4)) # Generate sample data x = np.linspace(0, 10, 100) ax.plot(x, np.sin(x)) # Create a new timer with an interval of 500 milliseconds timer = fig.canvas.new_timer(interval=500) # Add the update_title function as a callback to the timer timer.add_callback(update_title, ax) # Start the timer timer.start() plt.show()
輸出
執行上述程式後,您將獲得以下輸出:

觀看下面的影片以觀察此示例的工作原理。

帶定時器的動畫布朗運動
在更高階的場景中,我們利用定時器的優勢來動畫化一個二維布朗運動,建立一個隨著時間推移而生成的視覺動態繪圖。
示例
此示例演示了定時器在建立動畫視覺化中的應用。
import numpy as np import matplotlib.pyplot as plt # Callback function for the timer to update line data def update_line_data(line, x_data, y_data): x_data.append(x_data[-1] + np.random.normal(0, 1)) y_data.append(y_data[-1] + np.random.normal(0, 1)) line.set_data(x_data, y_data) line.axes.relim() line.axes.autoscale_view() line.axes.figure.canvas.draw() # Initial data points x_coords, y_coords = [np.random.normal(0, 1)], [np.random.normal(0, 1)] # Create a Matplotlib figure and axis fig, ax = plt.subplots(figsize=(7, 4)) line, = ax.plot(x_coords, y_coords, color='aqua', marker='o') # Create a new timer with a 100-millisecond interval animation_timer = fig.canvas.new_timer(interval=1000, callbacks=[(update_line_data, [line, x_coords, y_coords], {})]) animation_timer.start() # Display the animated plot plt.show()
輸出
執行上述程式後,您將獲得一個帶有動畫的圖形:

觀看下面的影片以觀察此示例的工作原理。
