Matplotlib ラベル散布点

Suraj Joshi 2023年1月30日
  1. matplotlib.pyplot.annotate() 関数を用いた散布図点へのラベルの追加
  2. 散布図の各点にラベルを追加するには matplotlib.pyplot.text() 関数を使用する
Matplotlib ラベル散布点

Matplotlib で散布図の点にラベルを付けるには、matplotlib.pyplot.annotate() 関数を使用することができます。同様に、散布図点にテキストラベルを追加するには、matplotlib.pyplot.text() 関数を使用することもできます。

matplotlib.pyplot.annotate() 関数を用いた散布図点へのラベルの追加

matplotlib.pyplot.annotate(text, xy, *args, **kwargs)

これは点 xytext パラメータの値をアノテーションします。xy はアノテーションを行う点の座標 (x, y) の組を表します。

import numpy as np
import matplotlib.pyplot as plt

np.random.seed(20)

X = np.random.randint(10, size=(5))
Y = np.random.randint(10, size=(5))

annotations = ["Point-1", "Point-2", "Point-3", "Point-4", "Point-5"]

plt.figure(figsize=(8, 6))
plt.scatter(X, Y, s=100, color="red")
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Scatter Plot with annotations", fontsize=15)
for i, label in enumerate(annotations):
    plt.annotate(label, (X[i], Y[i]))

plt.show()

出力:

matplotlib.pyplot.annotate()関数を用いて散布図の点にラベルを追加する

これは、点の X 座標と Y 座標を表す 2つのランダム配列 XY をそれぞれ作成します。XY と同じ長さの annotations というリストがあり、それぞれの点のラベルが格納されています。最後に、ループを繰り返して annotate() メソッドを用いて散布図の各点にラベルを追加します。

散布図の各点にラベルを追加するには matplotlib.pyplot.text() 関数を使用する

matplotlib.pyplot.text(x, y, s, fontdict=None, **kwargs)

ここで、xy はテキストを配置する座標、s は追加するテキストの内容です。

この関数は、xy で指定された位置に s を追加します。ここで、x はポイントの X 座標を表し、y は Y 座標を表します。

import numpy as np
import matplotlib.pyplot as plt

np.random.seed(20)

X = np.random.randint(10, size=(5))
Y = np.random.randint(10, size=(5))

annotations = ["Point-1", "Point-2", "Point-3", "Point-4", "Point-5"]

plt.figure(figsize=(8, 6))
plt.scatter(X, Y, s=100, color="red")
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Scatter Plot with annotations", fontsize=15)
for i, label in enumerate(annotations):
    plt.text(X[i], Y[i], label)

plt.show()

出力:

matplotlib.pyplot.text()関数を用いて、散布図の点にラベルを追加する

これはループを繰り返し、散布図の各点にラベルを追加するために matplotlib.pyplot.text() メソッドを使用します。

著者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

関連記事 - Matplotlib Scatter Plot