Seaborn 複数の折れ線グラフ

Ammar Ali 2022年4月18日
Seaborn 複数の折れ線グラフ

このチュートリアルでは、Seaborn の lineplot() 関数を使用して複数行のプロットを作成する方法について説明します。

Seaborn の複数の折れ線グラフ

Seaborn の lineplot() 関数は、データを線としてプロットします。線をプロットするには、x 軸と y 軸の値を関数に渡す必要があります。複数の線をプロットする場合は、各列が各線に対応する、指定されたデータのデータフレームを作成する必要があります。

同じプロットに 5 本の線をプロットするには、データフレーム内の各線のデータを列として保存してから、lineplot() 内のデータフレームを渡して複数の線をプロットする必要があります。lineplot() 関数は、データフレームの列の値を y 軸の値として使用し、値のインデックスを x 軸の値として使用して線をプロットします。

5つの列と 6つの行を含む配列を作成しましょう。pandas ライブラリの DataFrame() 関数を使用して、データフレームを作成します。DataFrame() 関数内に配列と行と列の数を渡す必要があります。

lineplot() 関数の data 引数を使用して、関数内にデータフレームを渡します。以下のコードを参照してください。

import seaborn as snNew
import pandas as pdNew
import matplotlib.pyplot as pltNew

array = [
    [11, 1, 0, 2, 0],
    [3, 8, 0, 1, 0],
    [0, 16, 3, 0, 0],
    [0, 0, 12, 0, 0],
    [0, 0, 0, 13, 0],
    [0, 1, 0, 0, 16],
]

DetaFrame_cm = pdNew.DataFrame(array, range(6), range(5))
snNew.lineplot(data=DetaFrame_cm)
pltNew.show()

複数の折れ線グラフ Seaborn

この関数は、異なる色と線のスタイルで 5 本の線をプロットしました。NumPy ライブラリの ndarray() 関数を使用して、指定されたデータの NumPy 配列を作成して 5 本の線をプロットし、それを使用して 5 本の線をプロットできます。

lineplot() 関数の markers 引数を使用して、線の内側にマーカーをプロットします。デフォルトでは、この引数は false ですが、true またはマーカー記号を含むリストに設定できます。引数が true に設定されている場合、関数はマーカーを処理します。

palette 引数を使用してラインに色を与えるようにカラーパレットを変更し、その値を暗い色の場合は dark のようなパレット名に設定できます。デフォルトでは、凡例は true に設定されていますが、legend 引数を false に設定することで、凡例を非表示にできます。

linewidth 引数を使用して、線幅を変更し、その値を浮動小数点数に設定できます。ms または markersize 引数を使用して、マーカーサイズを任意の浮動小数点値に設定できます。

mfc または markerfacecolor 引数と色、または赤の場合は r のような最初の文字を使用して、マーカーの面の色を任意の色に設定します。mec または markeredgecolor 引数を使用して、マーカーのエッジの色を任意の色に設定できます。

mew または markeredgewidth 引数を使用して、マーカーのエッジ幅を任意の浮動小数点値に設定します。上記のプロパティを変更してみましょう。

以下のコードを参照してください。

import seaborn as snNew
import pandas as pdNew
import matplotlib.pyplot as pltNew

array = [
    [11, 1, 0, 2, 0],
    [3, 8, 0, 1, 0],
    [0, 16, 3, 0, 0],
    [0, 0, 12, 0, 0],
    [0, 0, 0, 13, 0],
    [0, 1, 0, 0, 16],
]

DetaFrame_cm = pdNew.DataFrame(array, range(6), range(5))
snNew.lineplot(
    data=DetaFrame_cm,
    markers=["o", "d", "h", "p", "*"],
    palette="dark",
    legend=False,
    linewidth=2,
    ms=15,
    mec="r",
    mew=2,
    mfc="g",
)
pltNew.show()

出力:

複数の折れ線グラフのプロパティの変更

set() 関数と font_scale 引数を使用して、プロット内のテキストのフォントサイズを設定します。フォントサイズを大きくするには、font_scale の値を 1 より大きく設定し、その値を小さくして、1 未満に設定する必要があります。

プロット内のテキストのフォントサイズを大きくするには、以下のコードを使用する必要があります。

snNew.set(font_scale=1.5)
著者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

関連記事 - Seaborn Plot