首頁  >  文章  >  後端開發  >  如何在 Matplotlib 中格式化日期時間軸以獲得更好的可讀性?

如何在 Matplotlib 中格式化日期時間軸以獲得更好的可讀性?

Patricia Arquette
Patricia Arquette原創
2024-10-26 15:39:30626瀏覽

How to Format a Datetime Axis in Matplotlib for Better Readability?

格式化日期時間軸

使用日期時間索引繪製系列時,x 軸可能會顯示小時、分鐘和秒與年份和月份。為了簡化圖表的可讀性,可以刪除過多的時間資訊。

考慮一個範例係列:

2014-01-01     7
2014-02-01     8
2014-03-01     9
2014-04-01     8

繪製該系列最初將顯示一個具有擁擠的x 軸的圖表.

import matplotlib.pyplot as plt
import pandas as pd

series = pd.Series([7, 8, 9, 8], index=pd.date_range('2014-01', periods=4, freq='MS'))
plt.plot(series.index, series.values)
plt.show()

要解決這個問題,可以利用Matplotlib的格式化程式來控制x軸刻度的顯示格式。

import numpy as np
import matplotlib.dates as mdates

# generate data
N = 30
drange = pd.date_range("2014-01", periods=N, freq="MS")
np.random.seed(365)  # for reproducible values
values = {'values':np.random.randint(1,20,size=N)}
df = pd.DataFrame(values, index=drange)

# plot
fig, ax = plt.subplots()
ax.plot(df.index, df.values)

# set tick formatters
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m"))
ax.xaxis.set_minor_formatter(mdates.DateFormatter("%Y-%m"))
plt.xticks(rotation=90)
plt.show()

透過指定「%Y-%m」 " 格式字串,x 軸標籤現在以簡化格式顯示年份和月份。

以上是如何在 Matplotlib 中格式化日期時間軸以獲得更好的可讀性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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