seabornサンプルギャラリー解説(Facetting histograms by subsets of data)

seabornを活用する上で、公式サイトのギャラリーが勉強になりそうなので解説してみました。

第4弾は、displot関数を使って、seaborn付属のペンギンのデータを可視化してみます。

参考にしたのはこちらです。

# ライブラリ読み込み
import seaborn as sns

# スタイルを設定(この場合は格子状にする設定)
sns.set_theme(style="darkgrid")

# seabornにデフォルトで用意されているペンギンのデータを読み込む
df = sns.load_dataset("penguins")

# 与えられたデータを元にヒストグラムを出力。
sns.displot(
    data=df, x="flipper_length_mm", col="species", row="sex",
    binwidth=3, height=3, facet_kws=dict(margin_titles=True)
)

sns.displotについては、与えれらたデータからヒストグラムを描画してくれます。各引数の説明をします。(詳細はこちら

  • data:取り扱うデータ
  • x:グラフのX軸にする項目
  • col:どの項目で横軸方向にグラフを出力するか。今回の例ではspacies(ペンギンの種類)で分けようとしています。
  • row:どの項目で縦軸方向にグラフを出力するか。今回の例ではsex(ペンギンの性別)で分けようとしています。
  • binwidth:ヒストグラムをどの間隔で出力するか。
  • height:グラフの高さを指定。
  • facet_kws:FacetGridに渡すパラメータを指定。今回の例ではmargin_titlesをTrueに設定することでグラフのタイトルを見やすくしている。(具体的に何をしているのか、margin_titlesをFalseにすればわかります!)

覚えておくと色々と便利ですね!