如何更改 Matplotlib 图的日期时间刻度标签频率?

matplotlibpythondata visualization

要更改 Matplotlib 图的日期时间刻度标签频率,我们可以创建一个数据框并在某个日期范围内绘制它们

步骤

  • 设置图形大小并调整子图之间和周围的填充。
  • 要制作潜在的异构表格数据,请使用 Pandas 数据框。
  • 使用 plot() 方法绘制数据框。
  • 设置 X 轴主定位器,即 刻度。
  • 设置 X 轴主格式化程序,即 刻度标签。
  • 使用 autofmt_xdate()。日期刻度标签经常重叠,因此旋转它们并右对齐很有用。
  • 要显示图形,请使用 show() 方法。

示例

import pandas as pd
import numpy as np

import matplotlib.pyplot as plt
import matplotlib.dates as mdates

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

index = pd.date_range(start="2020-07-01", end="2021-01-01", freq="D")
index = [pd.to_datetime(date, format='%Y-%m-%d').date() for date in index]

data = np.random.randint(1, 100, size=len(index))

df = pd.DataFrame(data=data, index=index, columns=['data'])

ax = df.plot()
ax.xaxis.set_major_locator(mdates.MonthLocator(interval=1))
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d-%m-%Y'))

plt.gcf().autofmt_xdate()

plt.show()

输出


相关文章