Seaborn で時系列データをプロットする

Manav Narula 2023年1月30日
  1. Seaborn で seaborn.lineplot() 関数を使用して時系列データをプロットする
  2. Seaborn で seaborn.tsplot() 関数を使用して時系列データをプロットする
  3. Seaborn で seaborn.barplot() 関数を使用して時系列データをプロットする
Seaborn で時系列データをプロットする

時系列データは、時間の経過とともにいくつかの観測値を観測する特殊なタイプのデータです。すべての観測のタイムスタンプが記録されます。このようなタイプのデータは、通常、株価、センサーデータ、アプリケーション監視データなどについて話すときに扱わ​​れます。

このチュートリアルでは、Seaborn モジュールを使用して、Python でそのような時系列データをプロットする方法を学習します。

プロット用に独自のサンプル時系列データを作成します。

Seaborn で seaborn.lineplot() 関数を使用して時系列データをプロットする

折れ線グラフは、このモジュールの最も基本的なプロットの 1つです。これは通常、時間に関して何かを追跡するために使用されます。そのため、時系列データで頻繁に使用されます。

次のコードでは、seaborn.lineplot() 関数を使用して時系列データをプロットします。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01/01/2019",
            "01/02/2019",
            "01/03/2019",
            "01/04/2019",
            "01/05/2019",
            "01/06/2019",
            "01/07/2019",
            "01/08/2019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
plt.figure(figsize=(15, 8))
sns.lineplot(x="Date", y="Price", data=df)

seaborn.lineplot()関数を使用した seaborn 時系列

関数で使用する前に、DataFrame を処理する必要があることに注意してください。Date 列が日時形式であることを確認する必要がありました。これは、pd.to_datetime() 関数を使用して実行されます。

plt.figure() コマンドは、最終的な図形のサイズを変更するために使用されます。

Seaborn で seaborn.tsplot() 関数を使用して時系列データをプロットする

seaborn.tsplot() は、モジュールの最近のバージョンに比較的新しく追加されたものです。利用可能なデータのタイムスタンプがある場合に使用されます。これは、1つ以上の時系列データをプロットするために使用されます。データは、長い DataFrame の形式か、単位と時間の次元を持つ N 次元配列のいずれかです。

次のコードは、この関数の使用方法を示しています。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
sns.tsplot(data=df["Price"], time=df["Date"])

seaborn.tsplot()関数を使用した seaborn 時系列

Seaborn で seaborn.barplot() 関数を使用して時系列データをプロットする

棒グラフは、長方形の棒で観測値を表すために使用されます。Python の seaborn モジュールは、seaborn.barplot() 関数を使用して棒グラフを作成します。

棒グラフを使用して、連続した時系列データを表示できます。

例えば、

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
sns.barplot(x="Date", y="Price", data=df)

seaborn.barplot()関数を使用した seaborn 時系列

前の 2つの方法は線を使用してデータをプロットしたため、これは時系列データの代替の視覚化を提供します。

著者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn