Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで時系列データをプロットする方法をわかりやすく解説

Pythonのmatplotlibを使えば、時系列データ(日時を軸にしたデータ)を簡単にグラフ化できます。ここでは、datetimeオブジェクトを含むデータを折れ線グラフとして描画する基本的な手順を紹介します。

時系列プロットの基本手順

  • numpyを使用して、x軸(日時データ)とy軸(数値データ)を作成します。
  • plot()メソッドを使って、作成したx・yのデータをプロットします。
  • show()メソッドを実行して、図を画面に表示します。

コード例

以下のサンプルコードでは、2021年1月1日の0時から23時までの24個の日時データを生成し、それに対応するランダムな数値をy軸としてプロットしています。

import matplotlib.pyplot as plt
import datetime
import numpy as np

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

# 2021年1月1日の0時〜23時までの日時データを生成
x = np.array([datetime.datetime(2021, 1, 1, i, 0) for i in range(24)])

# 0〜99の範囲のランダムな整数値を生成
y = np.random.randint(100, size=x.shape)

plt.plot(x, y)
plt.show()

コードのポイント

datetime.datetime(2021, 1, 1, i, 0)の部分では、リスト内包表記を使って1時間ごとのdatetimeオブジェクトを効率的に生成しています。また、plt.rcParams["figure.figsize"]で図のサイズを指定し、figure.autolayoutTrueにすることで、ラベルやタイトルが図の外にはみ出るのを自動的に防げます。

x軸にdatetimeオブジェクトを渡すと、matplotlibが自動的に日付フォーマットを認識して適切な目盛りを表示してくれるため、時系列データの可視化に非常に便利です。

出力結果

Pythonで時系列データをプロットする方法をわかりやすく解説

  1. MatplotlibでPythonのプロットに度(°)記号を挿入する方法

    Matplotlibで作成したグラフに度(°)記号を挿入したい場合、LaTeX表記を利用すると簡単に実現できます。この記事では、具体的な手順とサンプルコードをわかりやすく解説します。 度記号を挿入する手順 numpyを使って、pV(圧力×体積)、nR、T(温度)のデータポイントを作成します。 plot()メソッドを使って、pVとTの関係をプロットします。 xlabel()メソッドで、x軸のラベル「Pressure x Volume」を設定します。 ylabel()メソッドで、LaTeX表記 $^\circ$ を含む温度ラベルをy軸に設定します。 show()メソッドを呼び出して、図を画面に表

  2. Python・Matplotlibでグラフに上付き文字を表示する方法

    Pythonでグラフを作成する際、単位や数式に「上付き文字(superscript)」を含めたいケースはよくあります。例えば、力の単位「kg·m/s²」のように、マイナス2乗を小さく上に付けて表示したい場合です。Matplotlibでは、LaTeX風の数式記法を使うことで、タイトルや軸ラベルに簡単に上付き文字を組み込めます。 上付き文字を表示するための手順 以下の手順に従って、f = ma のグラフに上付き文字付きの単位を表示してみましょう。 データの作成: NumPyを使って、加速度 a と力 f のデータポイントを生成します。 曲線の描画: plot() メソッドで f = ma の