Matplotlibでイベントを時間軸に沿ってプロットする方法
Matplotlibを使ってイベントの発生時刻を時間軸上に可視化したい場合、hlines() と eventplot() を組み合わせることで簡単に実現できます。以下の手順に従ってみましょう。
イベントを時間どおりにプロットする手順
- 図のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。
- イベントが発生する可能性のある位置を表すデータポイントのリストを作成します。
- y、xmin、xmax を指定して、基準となる水平線を描画します。
- 指定した各位置に同一の平行線(イベントマーク)を描画します。
- 図を表示するには show() メソッドを使用します。
コード例
import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True # イベントが発生する時刻のリスト a = [1, 2, 5, 6, 9, 11, 15, 17, 18] # 基準となる水平線を描画(y=1、x範囲は0〜24) plt.hlines(1, 0, 24) # 各時刻にイベントマークをプロット plt.eventplot(a, orientation='horizontal', colors='b') plt.show()
コードの解説
まず plt.hlines(1, 0, 24) によって、y=1 の高さに x=0 から x=24 までの水平線を引きます。これは時間軸の役割を果たします。続いて plt.eventplot() にリスト a を渡すことで、1、2、5、6、9、11、15、17、18 の各時刻に青色の短い縦線が自動的に描画されます。
このようにして作成される図は、いわゆる「ラスタープロット」と呼ばれる形式で、神経科学やログデータ分析など、イベントの発生タイミングを一目で把握したい場面で広く活用されています。イベントが多い場合は色や向き(orientation)、線の太さ(linewidths)などを調整することで、より見やすいグラフに仕上げることができます。
出力結果

-
Python Matplotlibで3Dグラフをプロットする方法を解説
PythonのMatplotlibを使えば、3次元の散布図やグラフを簡単に描画できます。この記事では、mpl_toolkits.mplot3dモジュールを利用して3Dグラフを作成する手順を、サンプルコード付きでわかりやすく解説します。 3Dグラフをプロットする基本手順 Pythonで3Dグラフを描くには、以下のステップに従います。 figure()メソッドを使って、新しい図(フィギュア)を作成するか、既存の図をアクティブにします。 Axes3Dオブジェクトを取得して、3D用の座標軸を準備します。 x、y、zそれぞれのデータポイントをリストとして定義します。 scatter3D()メソッドを使
-
Matplotlibで円の中に長方形をプロットする方法
Matplotlibを使って円の中に長方形を描画したい場合、patchesモジュールが提供するRectangle()クラスとCircle()クラスを組み合わせることで簡単に実現できます。以下の手順に従ってください。手順figure()メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。add_subplot()メソッドで現在の図にサブプロット(軸)を追加します。Rectangle()クラスとCircle()クラスを使って、長方形と円のインスタンスを作成します。add_patch()メソッドで作成したパッチを軸に追加します。xlim()およびylim()メソッドを使用して、x