Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python・Matplotlibのプロットで点の座標を表示する方法

PythonのMatplotlibを使って作成したグラフ(プロット)上に、各データポイントの座標値を直接表示する方法を解説します。座標を可視化することで、データの正確な位置関係がひと目で把握できるようになり、分析やプレゼンテーションの資料作成にも役立ちます。

実装手順

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。

  • 変数 N を初期化し、NumPyを使ってx軸・y軸のデータポイントを作成します。

  • xy のデータポイントをzip()でまとめ、ループ処理しながら各座標を注釈として配置します。

  • show() メソッドを使用して図を表示します。

コード例

import matplotlib.pyplot as plt
import numpy as np

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

N = 5

x = np.random.rand(N)
y = np.random.rand(N)

plt.plot(x, y, 'r*')

for xy in zip(x, y):
    plt.annotate('(%.2f, %.2f)' % xy, xy=xy)

plt.show()

出力結果

このコードを実行すると、以下のような出力が得られます。赤い星形マーカーで示された5つのデータポイントそれぞれに、小数第2位までの座標値が表示されます。

Python・Matplotlibのプロットで点の座標を表示する方法

コードのポイント解説

図のサイズとレイアウトの調整

plt.rcParams["figure.figsize"]で図のサイズをインチ単位で指定できます。plt.rcParams["figure.autolayout"]をTrueに設定しておくと、ラベルやタイトルが図の外にはみ出すのを自動的に防げるため便利です。

annotate()による座標の注釈表示

plt.annotate()は、グラフ上にテキスト注釈を追加するためのメソッドです。引数xyに座標位置を指定し、'%.2f'という書式指定子によって小数第2位までの数値を整形した文字列として描画しています。また、zip(x, y)を使うことで、x座標とy座標をペアにして順番に取り出し、すべての点に対して注釈を付けています。

なお、ランダムデータではなく実際のデータセットに対しても同じ手法がそのまま使えるため、散布図などで特定の点の値を強調したい場合にも応用できます。

  1. Python・Matplotlibでグラフに上付き文字を表示する方法

    Pythonでグラフを作成する際、単位や数式に「上付き文字(superscript)」を含めたいケースはよくあります。例えば、力の単位「kg·m/s²」のように、マイナス2乗を小さく上に付けて表示したい場合です。Matplotlibでは、LaTeX風の数式記法を使うことで、タイトルや軸ラベルに簡単に上付き文字を組み込めます。 上付き文字を表示するための手順 以下の手順に従って、f = ma のグラフに上付き文字付きの単位を表示してみましょう。 データの作成: NumPyを使って、加速度 a と力 f のデータポイントを生成します。 曲線の描画: plot() メソッドで f = ma の

  2. Matplotlibのラベルに改行を入れる方法|Pythonサンプルコード付きで解説

    本記事では、PythonのMatplotlibを使って、グラフの軸ラベルに改行を挿入する方法を解説します。「\n」を活用することで、X軸やY軸のラベルを複数行に分けて見やすく表示できます。 実装手順 「\n」を使用して、X軸・Y軸それぞれのラベルに改行を含めたテキストを設定します。 plt.rc()メソッドで現在のrcParamsを設定し、axesグループに対してプロパティサイクルを適用します。 cyclerを使って、線の色のグループを設定します。色のリストは「r」(赤)、「g」(緑)、「b」(青)、「y」(黄)で構成されます。 Cyclerクラスは、単一の位置引数、2つの位置引数のペア、ま