使用 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中文網其他相關文章!