Python Pandas – Seabornのswarmplotでカテゴリ変数ごとにスウォームをグループ化する方法
Seabornのスウォームプロット(Swarm Plot)は、点同士が重ならないように配置されたカテゴリ別散布図を描画するための機能です。描画には seaborn.swarmplot() を使用します。カテゴリ変数でスウォームをグループ化したい場合は、その変数をx軸またはy軸のいずれかに指定するだけで実現できます。
ここでは、次のようなCSVファイル「Cricketers2.csv」をデータセットとして使用します。
必要なライブラリのインポート
まず、必要なライブラリをインポートします。
import seaborn as sb import pandas as pd import matplotlib.pyplot as plt
CSVファイルからデータを読み込む
CSVファイルからPandasのDataFrameへデータを読み込みます。
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers2.csv")カテゴリ変数でスウォームをグループ化する
カテゴリ変数(ここでは「Role」=役割)をx軸に、数値変数(「Age」=年齢)をy軸に指定してスウォームをグループ化します。
sb.swarmplot(x = dataFrame["Role"], y = dataFrame["Age"])
スウォームプロットでは、各カテゴリ内のデータ点が重ならないよう横方向に調整されるため、カテゴリごとの分布やデータ数の違いをひと目で把握できます。特に外れ値の検出や、カテゴリ間のばらつきの比較に役立ちます。
サンプルコード全体
以下に完全なコードを示します。
import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt
# CSVファイルからPandas DataFrameにデータを読み込む
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers2.csv")
# テーマを設定する
sb.set_theme(style="whitegrid")
# カテゴリ変数でスウォームをグループ化する
sb.swarmplot(x = dataFrame["Role"], y = dataFrame["Age"])
# グラフを表示する
plt.show()出力結果
上記のコードを実行すると、次のような出力が得られます。

-
Python Pandas入門:Seabornで箱ひげ図の上にスウォームプロット(観測値の群れ)を重ねて描画する方法
データ分析において、分布の全体像を把握しながら個々のデータポイントも確認したい場面は多くあります。Seabornのスウォームプロット(Swarm Plot)は、点同士が重ならないように配置されたカテゴリ別散布図を描画する機能で、seaborn.swarmplot()を使用して実現できます。 本記事では、seaborn.boxplot()で描いた箱ひげ図の上に、このスウォームプロットを重ねて表示する方法を解説します。箱ひげ図だけでは見えない外れ値やデータの偏りを、視覚的に把握できるようになります。 前提条件と準備 まず、必要なライブラリをインポートします。Seaborn、Pandas、NumPy
-
Python Pandas・Seabornのswarmplotで2つのカテゴリ変数を使ってデータをグループ化する方法
Seabornのスウォームプロット(Swarm Plot)は、点が重ならないように配置されたカテゴリ別散布図を描画するための機能です。この描画には seaborn.swarmplot() を使用します。スウォームを2つのカテゴリ変数でグループ化したい場合は、swarmplot() の x、y、または hue パラメータにそれらの変数を指定します。 ここでは、CSVファイル「Cricketers2.csv」に保存されたデータセットを例に説明します。 必要なライブラリのインポート まず、必要なライブラリをインポートします。 import seaborn as sb import pandas as