首页 >后端开发 >Python教程 >如何设置 Matplotlib 图形的日期时间轴的格式以仅显示年份和月份?

如何设置 Matplotlib 图形的日期时间轴的格式以仅显示年份和月份?

Barbara Streisand
Barbara Streisand原创
2024-10-27 00:26:31251浏览

How to Format the Datetime Axis of a Matplotlib Graph to Display Year and Month Only?

更改 Matplotlib 图表上的日期时间轴格式

使用日期时间索引绘制时间序列时,通常需要格式化x 轴标签显示特定级别的详细信息,例如年月组合。这可以通过使用 matplotlib.dates 模块中的 DateFormatter 类来实现。

问题:

用户想要绘制按日期时间索引的序列,但图形显示精确到秒的时间值,导致标签混乱。所需的格式是仅显示年份和月份(例如“2014-01”或“2016 年 3 月”)。

解决方案:

实现所需的格式,按照以下步骤操作:

  1. 导入必要的模块:numpy (np)、pandas (pd)、matplotlib.pyplot (plt) 和 matplotlib.dates (mdates)。
  2. 使用日期时间索引和随机值创建一个示例 DataFrame。
  3. 使用 plt.subplots() 创建图形和坐标轴。
  4. 通过调用 ax.plot(df.index, df 绘制序列.values)。
  5. 使用 ax.set_xticks(df.index) 指定 x 轴刻度。
  6. 使用 DateFormatter 指定主要和次要刻度格式化程序。在此示例中, mdates.DateFormatter("%Y-%m") 用于以“YYYY-MM”格式显示日期。
  7. 使用 _ = plt 旋转 x 轴刻度标签(可选) .xticks(rotation=90) .

生成的图表将显示具有所需日期时间轴格式的系列数据,仅显示年份和月份值。

以上是如何设置 Matplotlib 图形的日期时间轴的格式以仅显示年份和月份?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn