首页 >后端开发 >Python教程 >如何在 Matplotlib 中格式化日期时间轴以获得更好的可读性?

如何在 Matplotlib 中格式化日期时间轴以获得更好的可读性?

Patricia Arquette
Patricia Arquette原创
2024-10-26 15:39:30687浏览

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