mcpField
A
alterlab-seaborn

alterlab-seaborn

github.com/alterlab-ieuデータ・データベース7870 回インストール5 週間前に更新
リポジトリ

alterlab-seaborn について

Python と pandas の DataFrame を使う分析者向けに、Seaborn による統計可視化を案内するスキルです。多様なプロット、統計推定、ファセット配置を扱い、必要に応じて matplotlib で調整できます。

主な機能

  1. 01関係・分布・カテゴリ別プロット
  2. 02回帰・行列の可視化
  3. 03ファセット・複数パネル配置
  4. 04セマンティックマッピングと統計推定
  5. 05配色・テーマ・matplotlib による調整

活用シーン

  1. 01DataFrame 内の変数間の関係を探索
  2. 02カテゴリ間の分布を比較
  3. 03相関ヒートマップや回帰プロットを作成
  4. 04出版向けの複数パネル図を作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alterlab-ieu/alterlab-academic-skills --skill alterlab-seaborn

インストール後、Claude Code で/alterlab-seabornを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

evals/
evals.json
references/
best_practices_and_troubleshooting.md
data_palettes_theming.md
examples.md
function_reference.md
objects_interface.md
plotting_functions.md

詳細

Seaborn による統計的可視化

概要

Seaborn は、出版品質の統計グラフィックスを作成するための Python 可視化ライブラリです。最小限のコードで、データセットを中心としたプロット、多変量解析、自動統計推定、複雑なマルチパネル図を作成する場合にこのスキルを使用します。

このスキルを使用する場面

pandas の DataFrame から直接、分布、関係、カテゴリ別の比較、相関ヒートマップ、ファセット化した小分割図など、手軽で見栄えのよい統計グラフィックスを作成するには seaborn を使用します。

対象外
シナリオ代わりに使用
ホバー、ズーム、HTML ダッシュボードを備えたインタラクティブなチャートalterlab-plotly
学術誌や論文向けの厳密なスタイル(カラム幅、ポイントサイズのフォント、CMYK、ベクター形式でのエクスポート)alterlab-scientific-viz
FacetGrid/PairGrid を超える、個々のアーティストやレイアウトの低レベルな制御alterlab-matplotlib(seaborn の Axes レベルのプロットでは ax= を受け取れます)
データファイル全体の探索的データ分析レポート(構造、品質、要約統計量)alterlab-eda
比較に使用する統計検定の選択と実行alterlab-statistical-analysis

設計思想

  1. データセット中心 — 抽象的な座標ではなく、DataFrame と名前付き変数を直接扱います。
  2. セマンティックマッピング — データ値を視覚的なプロパティ(色、サイズ、スタイル)に自動的に対応付けます。
  3. 統計を考慮 — 集計、誤差推定、信頼区間が組み込まれています。
  4. 美しいデフォルト設定 — 出版品質のテーマとパレットをすぐに利用できます。
  5. Matplotlib との統合 — 必要に応じて matplotlib によるカスタマイズと完全に互換性があります。

クイックスタート

例は seaborn ≥ 0.13 を対象としています(0.13.2 で検証済み。2026 年 9 月時点でも最新リリースです)。このバージョンで注意すべき API のポイントが 2 つあります。palette= は hue= と併せて指定してください(hue なしでの palette の使用は非推奨で、v0.14 で削除予定です)。また、エラーバーのスタイル設定には、非推奨で v0.15 で削除予定の errcolor/errwidth/scale/join キーワードではなく、err_kws={...} を使用してください。

matplotlib 3.11 ではすべてのプロット関数が引き続き動作しますが、boxplot(および catplot(kind="box"))では vert に関する MatplotlibDeprecationWarning が、heatmap では set_bad に関する PendingDeprecationWarning が発生します。どちらも seaborn の内部処理によるもので、現時点では無害です。matplotlib 3.13 では vert が削除される予定のため、seaborn のリリースで対応されるまでは、sns.boxplot に依存する環境では matplotlib<3.13 に固定してください。

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd

df = sns.load_dataset('tips')
sns.scatterplot(data=df, x='total_bill', y='tip', hue='day')
plt.show()

基本的なワークフロー

  1. データの形を整える — ロング形式(「tidy」形式)にします。各変数を列に、各観測値を行に配置します。この形式はすべての seaborn 関数で使用できます。ワイド形式のデータは df.melt(...) で整形します。references/data_palettes_theming.md を参照してください。
  2. プロットのカテゴリを選ぶ — 変数の型に合わせて選択します(以下の選択ガイドを参照)。
  3. 追加の次元を表現する — hue、size、style によるセマンティックマッピングを使用します。
  4. Axes レベルか Figure レベルかを選ぶ — Axes レベル(scatterplot、boxplot、heatmap、…)は ax= を使ってカスタム matplotlib レイアウトに組み込めます。Figure レベル(relplot、displot、catplot、lmplot、…)は図全体を管理し、col/row でファセット化します。
  5. テーマを設定して保存する — set_theme/set_context と savefig(dpi=300, bbox_inches='tight') を使用します(ベクター形式には PDF を使用)。

プロットカテゴリの選択

カテゴリを選び、各カテゴリのパラメーターとコードについては references/plotting_functions.md を参照してください。

目的カテゴリ主な関数
変数間の関係を確認する関係scatterplot、lineplot、relplot
分布/形状/密度を確認する分布histplot、kdeplot、ecdfplot、displot、jointplot、pairplot
カテゴリ間で比較するカテゴリstripplot、swarmplot、boxplot、violinplot、barplot、pointplot、countplot、catplot
線形関係/残差を確認する回帰regplot、lmplot、residplot
行列/相関を確認する行列heatmap、clustermap
カスタムの複数パネルグリッドを作成するグリッドFacetGrid、PairGrid、JointGrid

モダンな宣言型の seaborn.objects インターフェース(ggplot2 のように構成可能)は、複雑なレイヤー構成のプロットやプログラムによるプロットに最適です。詳しくは references/objects_interface.md を参照してください。

色とテーマ設定(基本)

  • 質的パレットはカテゴリ向け("colorblind"、"deep"、"muted")、逐次パレットは順序付きデータ向け("rocket"、"viridis")、発散パレットは中心を持つデータ向けです("vlag"、"coolwarm"、center=0 を指定)。
  • set_theme(style=..., context=..., palette=...) を使用します。スタイルには whitegrid/ticks/… があり、コンテキストは paper→talk→poster の順に要素のサイズが大きくなります。

パレットとテーマ設定の詳細については、references/data_palettes_theming.md を参照してください。

ベストプラクティス(基本)

  • 名前付きの DataFrame 列からプロットを作成すると、軸ラベルが保持されます。ファセットには図レベルの関数を使用し、hue/size/style で追加の次元を表現します。
  • 各関数が何を推定するかを把握してください。lineplot/barplot は平均値と信頼区間を自動計算するため、errorbar= と estimator= で上書きできます。
  • 微調整には matplotlib(ax.set(...)、axhline、tight_layout)を組み合わせます。解像度 dpi=300 で保存し、出版物には PDF を使用します。

ベストプラクティス、よくあるパターン、トラブルシューティング(凡例の配置、ラベルの重なり、図のサイズ、パレットの識別性、KDE の帯域幅)については、references/best_practices_and_troubleshooting.md を参照してください。

リファレンス一覧

  • references/plotting_functions.md — 各プロットカテゴリのパラメーターとコード(関係、分布、カテゴリ、回帰、行列、複数プロットのグリッド、図レベルと軸レベル)。
  • references/data_palettes_theming.md — ロング形式/ワイド形式のデータ構造、カラーパレット(質的/逐次/発散/カスタム)、テーマ設定(set_theme、スタイル、コンテキスト)。
  • references/best_practices_and_troubleshooting.md — ベストプラクティス、よくあるパターン(EDA、出版用の図、複数パネル、時系列)、トラブルシューティング。
  • references/function_reference.md — 関数シグネチャー、パラメーター、使用例の総合リファレンス。
  • references/objects_interface.md — モダンな seaborn.objects API の詳細ガイド。
  • references/examples.md — シナリオ別の実例とコードパターン。

コメント