Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Matplotlib 플롯의 날짜 시간 눈금 레이블 빈도를 변경하는 방법은 무엇입니까?

<시간/>

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()

출력

Matplotlib 플롯의 날짜 시간 눈금 레이블 빈도를 변경하는 방법은 무엇입니까?