Matplotlib の散布図に凡例を追加する方法


次の構文を使用して、Matplotlib の散布図に凡例を追加できます。

 import matplotlib. pyplot as plt
from matplotlib. colors import ListedColormap

#define values, classes, and colors to map 
values = [0, 0, 1, 2, 2, 2]
classes = [' A ', ' B ', ' C ']
colors = ListedColormap([' red ', ' blue ', ' purple '])

#create scatterplot
scatter = plt. scatter (x, y, c=values, cmap=colors)

#add legend
plt. legend ( * scatter.legend_elements ())

次の例は、この構文を実際に使用する方法を示しています。

例 1: 値を含む散布図の凡例

次の例は、凡例に値が表示される散布図を作成する方法を示しています。

 import matplotlib. pyplot as plt
from matplotlib. colors import ListedColormap

#define data
x = [3, 4, 4, 6, 8, 9]
y = [12, 14, 17, 16, 11, 13]

#define values, classes, and colors to map 
values = [0, 0, 1, 2, 2, 2]
classes = [' A ', ' B ', ' C ']
colors = ListedColormap([' red ', ' blue ', ' purple '])

#create scatterplot
scatter = plt. scatter (x, y, c=values, cmap=colors)

#add legend with values
plt. legend ( * scatter.legend_elements ()) 

例 2: クラスを含む散布図の凡例

次の例は、凡例にクラス名が表示される散布図を作成する方法を示しています。

 import matplotlib. pyplot as plt
from matplotlib. colors import ListedColormap

#define data
x = [3, 4, 4, 6, 8, 9]
y = [12, 14, 17, 16, 11, 13]

#define values, classes, and colors to map 
values = [0, 0, 1, 2, 2, 2]
classes = [' A ', ' B ', ' C ']
colors = ListedColormap([' red ', ' blue ', ' purple '])

#create scatterplot
scatter = plt. scatter (x, y, c=values, cmap=colors)

#add legend with class names
plt. legend (handles=scatter. legend_elements ()[ 0 ], labels=classes)

この凡例には、指定した値 (0、1、2) ではなく、指定したクラス名 (A、B、C) が表示されることに注意してください。

追加リソース

Matplotlib でプロット サイズを増やす方法
Matplotlib でタイトルの位置を調整する方法
Matplotlib で軸範囲を設定する方法

コメントを追加する

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