プログラミングの用語一覧へ
このページの目次

plt.scatterとは?

読み方:plt.scatter

最終更新:2026/08/18

3秒でわかる

matplotlib で散布図を描く関数。2 つの数値の関係に傾向があるかどうかを、集計する前に目で確かめるために使います。

もう少し詳しく

どういうものか

plt.scatter は matplotlib で散布図を描く関数です。x 方向の値の並びと y 方向の値の並びを渡すと、対応する点を平面に打ちます。1 行のデータが 1 個の点になります。

点の大きさは s、色は c、透明度は alpha で指定します。c に数値の列を渡すと値に応じて色が変わるため、2 軸の散布図に 3 つ目の情報を重ねられます。

なぜ必要か

平均や相関係数だけを見て判断すると、形の違いを見落とします。相関係数がほぼ同じでも、実際には直線に乗っている場合、2 つの塊に分かれている場合、外れ値 1 個に引っ張られている場合があります。散布図はその違いが一目で分かります。

分析の初手で散布図を描くと、後で使う手法の選び方も決まります。曲線的な関係なら直線の回帰は合いませんし、塊が 2 つあるならグループごとに分けて見るべきだと分かります。

具体例

import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv("sales.csv") plt.scatter(df["temperature"], df["ice_sales"], s=20, alpha=0.5) plt.xlabel("temperature") plt.ylabel("ice_sales") plt.title("temperature vs ice sales") plt.show()

カテゴリで色を分けるなら、グループごとに呼び出して重ねます。

for name, group in df.groupby("shop"): plt.scatter(group["temperature"], group["ice_sales"], label=name, alpha=0.6) plt.legend() plt.show()

つまずきやすいところ

点が多いと真っ黒に潰れて何も読めません。数千件を超えたら alpha を 0.3 前後に落とし、s を小さくします。それでも重なるなら、ヒストグラムを 2 次元にした hexbin へ切り替えます。

欠損値の扱いも要注意です。NaN が含まれる行は描画されず、黙って点が減ります。件数が合わないと感じたら df.isna().sum() で先に確認します。

plt.plot に点マーカーを指定しても似た絵になりますが、plot は既定で点どうしを線で結ぶため、順序の無いデータではぐちゃぐちゃな線が入ります。関係を見る目的なら scatter を使います。

覚え方

「線でつながないのが scatter、つなぐのが plot」です。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地plt.scatterプログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

データ分析コースの全編を見る