SeabornはPythonで使えるデータ可視化ライブラリで、matplotlibに基づいています。
このライブラリは統計的なグラフを簡単に作成することができ、特にデータセット内のパターンの視覚化に優れています。
Seabornの散布図(scatter plot)は、2つの連続変数間の関係を視覚的に表現するのに非常に有効です。
Seaborn散布図の基本
Seabornの散布図を作成するための基本的な関数はscatterplot
です。
この関数はx軸とy軸にそれぞれ変数を指定して、データポイントを平面上にプロットします。
基本的な使い方は以下の通りです。
import seaborn as sns
import matplotlib.pyplot as plt
# データセットのロード
data = sns.load_dataset("iris")
# 散布図の作成
sns.scatterplot(x="sepal_length", y="sepal_width", data=data)
# グラフの表示
plt.show()
Seaborn散布図の高度なカスタマイズ
マーカーのカスタマイズ
Seabornのscatterplot
関数では、マーカーの形状、サイズ、色などを詳細にカスタマイズできます。
markers
パラメータを使用して、異なるカテゴリに対して異なるマーカー形状を設定できます。
さらに、s
パラメータを使用してマーカーのサイズを調整することもできます。
透明度の調整
データポイントが多い場合、散布図上での重複を避けるために、alpha
パラメータを使用してマーカーの透明度を調整することができます。
これにより、データの密度が高い領域をより明確に識別できるようになります。
回帰線の追加
散布図に回帰線を追加することで、変数間の関係の傾向を視覚化できます。
Seabornのregplot
関数は、散布図に回帰線を描画するために特に設計されています。
sns.regplot(x="sepal_length", y="sepal_width", data=data)
plt.show()
複数の散布図の組み合わせ
pairplot
関数を使用すると、データセット内の複数の変数間で散布図を簡単に作成し、比較することができます。
これは、複数の変数間の関係を一度に観察する際に非常に便利です。
sns.pairplot(data, hue="species")
plt.show()
FacetGridを使用した条件付きプロット
FacetGrid
を使用すると、カテゴリに基づいてデータをサブセットに分割し、それぞれのサブセットに対して散布図を描画できます。
これにより、異なるサブグループ間での変数の振る舞いを比較するのに適しています。
g = sns.FacetGrid(data, col="species")
g.map(sns.scatterplot, "sepal_length", "sepal_width")
plt.show()
機能拡張
Seabornの散布図は、さまざまな追加機能を使ってカスタマイズすることができます。
- 色の追加:
hue
パラメータを使って、別の変数に基づいてデータポイントに色をつけることができます。 - スタイルの追加:
style
パラメータを使って、異なるスタイルのマーカーをデータポイントに適用できます。 - サイズの調整:
size
パラメータを使って、データポイントのサイズを変数の値によって変えることができます。
実例
上記の機能を組み合わせた散布図の例を以下に示します。
# 色とスタイルの追加
sns.scatterplot(x="sepal_length", y="sepal_width", hue="species", style="species", data=data)
plt.show()
この例では、species
(種)に基づいて色とスタイルを変えています。
これにより、異なる花の種ががく片の長さと幅にどのように影響を与えているかを一目で理解することができます。
まとめ
Seabornの散布図は、データ間の関係を素早く簡単に理解するのに役立ちます。
カスタマイズのオプションも豊富で、データを多角的に分析するのに適しています。
Pythonとデータサイエンスにおいて、Seabornは強力なツールの一つです。
以上、Seabornの散布図についてでした。
最後までお読みいただき、ありがとうございました。