2変数間のデータ分析や相関を分析するために散布図が使われます。
散布図の特徴としましては、データ1点ごとの位置や分布、相関関係を視覚的に把握できるということになります。
デメリットとしては、2変数間の分析しか行えないこと、相関の強さを視覚的にだいたい確認することしかできず、相関係数といった数値で確認できないことです。
データの読み込み
今回はチップのデータセットを読み込みます。
1 | import seaborn as sns |

散布図の表示
支払総額(total_bill)とチップ(tip)の散布図を表示します。
1 | sns.scatterplot(data=tips, x='total_bill', y='tip') |

ざっくりですが、正の相関がありそうだということが見てとれます。
相関係数を表示します。
1 | tips.corr() |

相関係数は0.67となり、やや相関があるようです。
(相関係数は一般的に1に近いほど正の相関が強く、-1に近いほど負の相関が強いということになります。)
さらに喫煙者と非喫煙者に絞り込んで相関を見てみます。
1 | sns.scatterplot(data=tips, x='total_bill', y='tip', hue='smoker') |

1つのグラフだと見づらいため、2つのグラフに分けてみます。
1 | sns.relplot(data=tips, kind='scatter', x='total_bill', y='tip', col='smoker') |

右図の非喫煙者の方が正の相関が強いように見えます。
非喫煙者の相関係数を見てみます。
1 | tips[tips.smoker=='No'].corr() |

0.82とより強い相関があることが確認できました。
さらに食事の時間帯に絞り込んで相関を確認していきます。
1 | g = sns.FacetGrid(tips, height=5, col='time', row='smoker') |

下側の2つの図(非喫煙者のグラフ)が上図よりも相関が強いようです。
ランチ(左)と夕食(右)を比較した場合では、どちらも同じ程度の相関があるように見えます。
そこでそれぞれの相関係数を確認します。
まず非喫煙者のランチ帯の相関係数を確認します。
1 | tips[(tips.smoker=='No') & (tips.time == 'Lunch')].corr() |

次に非喫煙者の夕食帯の相関係数を確認します。
1 | tips[(tips.smoker=='No') & (tips.time == 'Dinner')].corr() |

ランチ帯の相関係数が0.83、夕食帯の相関係数が0.81と、ややランチ帯の方が相関が強いことが分かりました。
(実行環境としてGoogleさんのColaboratoryを使用ています。)
次回は、ヒートマップを使って大量データの相関を見ていきます。