本期,我们继续跟着案例学Seaborn之KDE。在Seaborn中,KDE代表核密度估计(Kernel Density Estimation),这是一种用于估计概率密度函数的非参数方法。KDE(核密度估计)图是直方图(Histgram)的平滑版本,表示连续随机变量的概率密度函数。y轴表示观察到变量的特定值的密度或可能性,x轴表示变量本身的值。一、案例学习
我们继续使用mpg案例来看一下horsepower(马力)的KDE图。
#mpg数据集中horsepower的KDE Plots图sns.kdeplot(data=df, x='horsepower', hue='cylinders', fill=True, palette='viridis', alpha=.5, linewidth=0.5)plt.title('mpg数据集中horsepower的KDE Plots图')
从图中,我们可以看出在mpg数据集中,horsepower(马力)随着cylinders(气缸数量)的增加而增加,而大多数汽车有4、6或8个气缸。再来看一下weight汽车重量的KDE图。
#汽车重量的KDE Plotssns.kdeplot(data=df, x="weight", hue="origin",multiple="stack")plt.title('汽车重量的KDE Plot')
从图中,我们可以看出多重量级的汽车原产地都是美国。
二、一些参数
kdeplot的核密度估计功能提供了许多自定义选项,例如:
- bw_adjust 参数可以调整带宽(bandwidth),影响曲线的平滑程度。
- 可以通过color和label参数来设置曲线的颜色和图例标签。
- 通过multiple参数来改变曲线在图形上显示的方式,主要有三种:layer(图层式)、stack(堆叠式)、fill(填充式)。
比如,对于上面两幅图,我们调整一下bw_adjust,看一下对曲线平滑度的影响,设置bw_adjust=0.2.
可以看到,bw_adjust调整为0.2以后,曲线变的很不平滑了。我们再来调整一下multiple的方式,multiple="layer"与multiple="fill"。
三、总结KDE核密度估计图是探索和展示数据分布的强大工具,在数据可视化中,KDE图表常用于展示单变量或双变量数据的分布情况,它比直方图更平滑,可以更好地展示数据的分布形态。当然,想学习更多关于Seaborn中KDE的知识,请参考官方文档:https://seaborn.pydata.org/generated/seaborn.kdeplot.html
自己动手试试吧?