ホームページ >バックエンド開発 >Python チュートリアル >Matplotlib で X 軸に日付を正しくプロットするにはどうすればよいですか?
時系列データを扱う場合、日付に対して情報をプロットするのが一般的なタスクです。ただし、日付の変換とプロットではエラーが発生する場合があります。
問題: 日付の変換とプロット
この例では、ユーザーは「ValueError: year」が発生しました。 X 軸に日付をプロットしようとすると、範囲外です」というエラーが発生します。この問題は、特に num2date を使用する場合の変換プロセスから発生しました。
解決策: プロット関数の利用
この問題を解決するには、プロット関数の代わりにプロット関数を使用することを検討してください。プロットの日付。このメソッドは日付のリストを取得し、日付として自動的に認識するため、変換手順を省略できます。
ステップ 1: 日付を datetime.date オブジェクトに変換する
扱いやすくするために、日付文字列を datetime.date のインスタンスに変換します。例:
<code class="python">import datetime as dt dates = ['01/02/1991', '01/03/1991', '01/04/1991'] x = [dt.datetime.strptime(d, '%m/%d/%Y').date() for d in dates]</code>
ステップ 2: 日付書式設定用の X 軸の構成
matplotlib の DateFormatter と DayLocator を使用して日付を正しく表示するように X 軸を設定します。 .dates:
<code class="python">import matplotlib.pyplot as plt import matplotlib.dates as mdates plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%m/%d/%Y')) plt.gca().xaxis.set_major_locator(mdates.DayLocator())</code>
ステップ 3: プロットを生成する
最後に、設定された x 軸と y 軸のデータを使用してデータをプロットします。
<code class="python">plt.plot(x, y) plt.gcf().autofmt_xdate()</code>
このメソッドは変換エラーを排除し、日付を X 軸に正確にプロットし、時間ベースのデータを明確に表現します。
以上がMatplotlib で X 軸に日付を正しくプロットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。