시각화하려는 날짜/시간 인덱스가 있는 시리즈가 있는 시나리오에서 다음과 같은 상황이 발생할 수 있습니다. 그래프는 "yyyy-mm" 또는 "2016 March"와 같은 간단한 형식을 선호함에도 불구하고 시간, 분, 초를 포함한 타임스탬프를 표시합니다.
이 문제를 해결하고 원하는 형식을 얻으려면 다음 기능을 활용할 수 있습니다. matplotlib에서 제공합니다. 특히 날짜/시간 축은 포맷터를 사용하여 사용자 정의할 수 있습니다. 이러한 포맷터를 사용하면 X축의 눈금 레이블을 표시하는 방법을 지정할 수 있습니다.
다음은 포맷터 사용을 보여주는 예입니다.
<code class="python">import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.dates as mdates # Sample data with hourly timestamps N = 30 drange = pd.date_range("2014-01", periods=N, freq="H") np.random.seed(365) values = {'values':np.random.randint(1,20,size=N)} df = pd.DataFrame(values, index=drange) # Create a plot with incorrect formatting fig, ax = plt.subplots() ax.plot(df.index, df.values) ax.set_xticks(df.index) # Use formatters to achieve the desired formatting ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m")) ax.xaxis.set_minor_formatter(mdates.DateFormatter("%Y-%m")) plt.xticks(rotation=90) # Display the updated plot with the desired formatting plt.show()</code>
이 예에서는 먼저 시간별 타임스탬프가 포함된 샘플 DataFrame을 만듭니다. 그런 다음 matplotlib.dates의 DateFormatter를 사용하여 x축의 눈금 레이블이 연도와 월만 나타내는 "%Y-%m" 형식이어야 함을 지정합니다. 마지막으로 xticks를 호출하여 가독성을 높이기 위해 눈금 레이블을 회전합니다.
이 접근 방식을 구현하면 날짜/시간 축의 형식을 효과적으로 사용자 정의하여 원하는 표시 요구 사항에 맞게 조정할 수 있습니다.
위 내용은 연도와 월만 표시하도록 matplotlib에서 날짜/시간 축의 형식을 어떻게 지정합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!