Seaborn 可视化(二)+https://developer.aliyun.com/article/1543916?spm=a2c6h.13148508.setting.31.1fa24f0eyCLrzp
pairplot的缺点是存在冗余信息,图的上半部分和下半部分相同
可以使用pairgrid手动指定图的上半部分和下半部分
pair_grid = sns.PairGrid(tips) pair_grid.map_upper(sns.regplot) pair_grid.map_lower(sns.kdeplot) pair_grid.map_diag(sns.histplot) plt.show()
多变量数据
绘制多变量数据没有标准的套路
如果想在图中包含更多信息,可以使用颜色、大小和形状来区分它们
通过颜色区分
使用violinplot函数时,可以通过hue参数按性别(sex)给图着色 可以为“小提琴”的左右两半着不同颜色,用于区分性别
其它绘图函数中也存在hue参数
scatter = sns.lmplot(x='total_bill',y='tip',data = tips,hue='sex',fit_reg = False)
通过向hue参数传入一个类别变量,可以让pairplot变得更有意义
sns.pairplot(tips,hue = 'sex')
通过大小和形状区分
- 可以通过点的大小表示更多信息,但通过大小区分应谨慎使用,当大小差别不大时很难区分
- 在Seaborn中的lmplot,可以通过scatter_kws参数来控制散点图点的大小
scatter = sns.lmplot(x='total_bill',y='tip',data =tips,fit_reg=False,hue='sex',markers=['o','x'])
Seaborn主题和样式
上面的Seaborn图都采用了默认样式,可以使用sns.set_style函数更改样式。
该函数只要运行一次,后续绘图的样式都会发生变化
Seaborn有5中样式:
- darkgrid 黑色网格(默认)
- whitegrid 白色网格
- dark 黑色背景
- white 白色背景
- ticks
fig,ax = plt.subplots()
ax = sns.violinplot(x='time',y='total_bill',hue='sex',data = tips,split = True)