\

PythonのMatplotlibライブラリを使用して、時間軸を持つグラフを作成する方法について説明します。この記事では、時系列データの軸設定、表示期間の指定方法、FormatterとLocatorを使用した任意の目盛り設定方法について解説します。

時系列データの軸設定

Matplotlibで時系列データをプロットすると、自動で軸が時間軸になります。しかし、デフォルト設定では、目盛り値が適切に表示できない場合があります。そこで、時系列データの軸設定について解説します。

まずは、サンプルの時系列データを用意して、デフォルト設定でプロットしてみます。

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

data = np.random.rand(36)
df = pd.DataFrame({"Val":data}, index=pd.Index(pd.date_range("2020/1/1", periods=36, freq='MS'), name="Date"))

fig, ax = plt.subplots(figsize=(6, 2))
ax.plot(df.index, df["Val"])

このサンプルデータをMatplotlibでグラフ化してみると、x軸の時間軸目盛りが重なってしまい、よく見えません。設定を変更して、時間軸を見やすく、自分の思った通りに設定したいですよね。

表示期間の指定方法

表示期間を指定するには、Figureオブジェクトの .autofmt_xdate() を使用します。このメソッドは、目盛りの水平位置、文字の向き(回転角度)を自動で調整してくれます。

fig, ax = plt.subplots(figsize=(6, 2.5))
ax.plot(df.index, df["Val"])
fig.autofmt_xdate()

fig.autofmt_xdate() を実行するだけで、時間軸目盛りが一気に見やすくなります。

FormatterとLocatorを使用した任意の目盛り設定方法

FormatterとLocatorを使用すると、目盛りの表示形式と表示位置を自由に設定することができます。

以上がPythonとMatplotlibを使用して時間軸のグラフを作成する基本的な方法です。これらの知識を活用して、自分のデータに合わせたグラフを作成してみてください。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です