seaborn
可視化ライブラリ。
matplotlibよりもDataFrameとの親和性が高い。
おまじない
import matplotlib.pyplot as plt
import seaborn as sns
プロットの全体styleを変える
https://qiita.com/eriksoon/items/b93030ba4dc686ecfbba#pltstyleuseseaborn-whitegrid
サイズの変更
ほとんどは、matplotlibと同じ感じ。
fig = plt.figure(figsize=(10, 5), dpi=100)
# その後、各種プロット
ただし、以下にあるようにplotの種類によっては設定方法が違う。
https://qiita.com/nj_ryoo0/items/9105ddfdf1b08b58398e
pairplot、relplot、catplot、lmplot、PairGrid、FacetGridが該当。
g = sns.lmplot(...)
g.fig.set_figheight(10)
g.fig.set_figwidth(20)
タイトル付与
p = sns.lineplot(...)
p.set_title("Title")
p.set_xlim([-1.0, 1.0])
p.set_ylim([-1.0, 1.0])
軸範囲設定
p.set_xlim([-1.0, 1.0])
p.set_ylim([-1.0, 1.0])
散布図
fig = plt.figure(figsize=(10, 5))
p = sns.scatterplot(x=x, y=y)
折れ線グラフ(lineplot)
fig = plt.figure(figsize=(10, 5))
p = sns.lineplot(x=x, y=y)
replot(relational-plot)
W.I.P.
累積度数分布(ECDF: Empirical Cumulative Distribution Function)
"経験的"累積分布関数を描画する。
DataFrameとecdfしたいカラム名を指定する。
fig = plt.figure(figsize=(10, 5))
p = sns.ecdfplot(x='column name', data=df)
カーネル密度推定(KDE: Kernel Density Estimate)
確率密度関数の推定を描画する。
ヒストグラムのようにbin数を悩まなくていいのが嬉しい。
DataFrameとecdfしたいカラム名を指定する。
fig = plt.figure(figsize=(10, 5))
p = sns.kdeplot(x='column name', data=df)
heatmap
https://seaborn.pydata.org/generated/seaborn.heatmap.html
fig = plt.figure(figsize=(10, 5))
p = sns.heatmap(np_data, vmin=-20, vmax=20) # np_dataは行列で与える。
subplot
fig, ax = plt.subplots(2,2, figsize=(10, 5))
p = sns.ecdfplot(x='column name', data=df, ax=ax[0,0])
p = sns.kdeplot(x='column name', data=df, ax=ax[0,1])
参考
https://qiita.com/kakiuchis/items/f7c830a2b726992a6165#histplot%E3%83%92%E3%82%B9%E3%83%88%E3%82%B0%E3%83%A9%E3%83%A0
Last updated