首頁 >後端開發 >Python教學 >如何使用 Matplotlib 有效地繪製時間序列資料?

如何使用 Matplotlib 有效地繪製時間序列資料?

Barbara Streisand
Barbara Streisand原創
2024-12-06 15:09:12219瀏覽

How Can I Effectively Plot Time Series Data Using Matplotlib?

使用 Matplotlib 繪製時間序列資料

Matplotlib 的優點之一在於其能夠有效地視覺化時間序列資料。然而,嘗試在 x 軸上繪製時間時遇到的挑戰可能會令人沮喪。讓我們解決這些錯綜複雜的問題並提供全面的解決方案。

時間格式與轉換

解鎖時間序列繪圖的關鍵是了解時間戳資料的格式。 Matplotlib 期望時間值是數位形式,而非人類可讀的格式 (HH:MM:SS.mmmmmm)。為了讓事情正常運作,您需要使用 datetime.strptime 將時間戳記轉換為 Pythondatetime 物件。

使用 date2num 的數字表示

使用日期時間格式的時間戳,下一步是將它們翻譯成 Matplotlib 能夠理解的語言。這就是 date2num 發揮作用的地方。它將日期時間物件轉換為針對 matplotlib 繪圖優化的數字表示形式。

使用plot_date繪圖

最後,讓我們繪製時間序列資料。 Matplotlib 提供了一個專為此任務設計的名為plot_date 的函式。它需要兩個參數:日期(從我們的日期時間物件產生)和 y 值(要繪製的浮點數)。

程式碼示範

這裡一個簡單的程式碼片段來說明該過程:

import matplotlib.pyplot as plt
import matplotlib.dates
from datetime import datetime

x_values = [datetime(2021, 11, 18, 12), datetime(2021, 11, 18, 14), datetime(2021, 11, 18, 16)]
y_values = [1.0, 3.0, 2.0]

dates = matplotlib.dates.date2num(x_values)
plt.plot_date(dates, y_values)
plt.show()

此程式碼將產生一個圖,其中x 軸代表時間Matplotlib 辨識的數值格式,y 軸顯示對應的浮點數值。

以上是如何使用 Matplotlib 有效地繪製時間序列資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn