Seaborn | 初识Seaborn

import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline

# 使用默认的seaborn主题
sns.set()

tips小费数据集

  • total_bill: 总金额
  • tip: 小费金额
  • sex: 性别
  • smoker: 是否抽烟
  • day: 周几
  • time: 午饭(Lunch), 晚餐(Dinner)
  • size: 用餐人数
tips = sns.load_dataset('tips')
tips.head(5)
total_bill tip sex smoker day time size
0 16.99 1.01 Female No Sun Dinner 2
1 10.34 1.66 Male No Sun Dinner 3
2 21.01 3.50 Male No Sun Dinner 3
3 23.68 3.31 Male No Sun Dinner 2
4 24.59 3.61 Female No Sun Dinner 4
# style 代表形状, hue代表颜色
sns.relplot(x="total_bill", y="tip", col="time", hue='sex', style="smoker", size="size", data=tips)
plt.show()

Seaborn | 初识Seaborn_第1张图片

上图分析出的结论

  • 用餐时间, Dinner数明显大于Lunch
  • Male明显多于Female
  • 小额消费较多
  • Lunch比Dinner大笔消费和小费多
  • total_bill与tip呈线性关系

箱形图

下图可看出:

  • Male明显多于Female
  • Dinner用餐量明显大于Lunch
sns.catplot(x='time', y='total_bill', kind='box', hue='sex', data=tips)
plt.show()

Seaborn | 初识Seaborn_第2张图片

直方图

total_bill主要集中在 10~20

sns.distplot(tips['total_bill'], kde=False)
plt.show()

Seaborn | 初识Seaborn_第3张图片

小提琴

下图可看出:

  • 大额消费主要集中在Dinner时间段的的男性
  • 大额小费主要集中在Dinner时间段的的男性
sns.catplot(x='time', y='total_bill', hue='sex', kind='violin', data=tips)
plt.show()

Seaborn | 初识Seaborn_第4张图片

sns.catplot(x='time', y='tip', hue='sex', kind='violin', data=tips)
plt.show()

Seaborn | 初识Seaborn_第5张图片

swarm散点图

sns.catplot(x='smoker', y='tip', kind='swarm', hue='sex', data=tips)
plt.show()

Seaborn | 初识Seaborn_第6张图片

线性关系

total_bill与bill成线性关系

sns.regplot(x='total_bill', y='tip', data=tips)
plt.show()

Seaborn | 初识Seaborn_第7张图片

你可能感兴趣的:(【数据可视化】)