# seaborn.kdeplot
> 译者:[hyuuo](https://github.com/hyuuo)
```py
seaborn.kdeplot(data, data2=None, shade=False, vertical=False, kernel='gau', bw='scott', gridsize=100, cut=3, clip=None, legend=True, cumulative=False, shade_lowest=True, cbar=False, cbar_ax=None, cbar_kws=None, ax=None, **kwargs)
```
拟合并绘制单变量或双变量核密度估计图。
参数:`data`:一维阵列
> 输入数据
**data2:一维阵列,可选。
> 第二输入数据。如果存在,将估计双变量 KDE。
`shade`:布尔值,可选参数。
> 如果为 True,则在 KDE 曲线下方的区域中增加阴影(或者在数据为双变量时使用填充的轮廓绘制)。
`vertical`:布尔值,可选参数。
> 如果为 True,密度图将显示在 x 轴。
`kernel`:{‘gau’ | ‘cos’ | ‘biw’ | ‘epa’ | ‘tri’ | ‘triw’ },可选参数
> 要拟合的核的形状代码,双变量 KDE 只能使用高斯核。
`bw`:{‘scott’ | ‘silverman’ | scalar | pair of scalars },可选参数
> 用于确定双变量图的每个维的核大小、标量因子或标量的参考方法的名称。需要注意的是底层的计算库对此参数有不同的交互:`statsmodels`直接使用它,而`scipy`将其视为数据标准差的缩放因子。
`gridsize`:整型数据,可选参数。
> 评估网格中的离散点数。
`cut`:标量,可选参数。
> 绘制估计值以从极端数据点切割* bw。
`clip`:一对标量,可选参数。
> 用于拟合 KDE 图的数据点的上下限值。可以为双变量图提供一对(上,下)边界。
`legend`:布尔值,可选参数。
> 如果为 True,为绘制的图像添加图例或者标记坐标轴。
`cumulative`:布尔值,可选参数。
> 如果为 True,则绘制 kde 估计图的累积分布。
`shade_lowest`:布尔值,可选参数。
> 如果为 True,则屏蔽双变量 KDE 图的最低轮廓。绘制单变量图或“shade = False”时无影响。当你想要在同一轴上绘制多个密度时,可将此参数设置为“False”。
`cbar`:布尔值,可选参数。
> 如果为 True 并绘制双变量 KDE 图,为绘制的图像添加颜色条。
`cbar_ax`:matplotlib axes,可选参数。
> 用于绘制颜色条的坐标轴,若为空,就在主轴绘制颜色条。
`cbar_kws`:字典,可选参数。
> `fig.colorbar()`的关键字参数。
`ax`:matplotlib axes,可选参数。
> 要绘图的坐标轴,若为空,则使用当前轴。
`kwargs`:键值对
> 其他传递给`plt.plot()`或`plt.contour {f}`的关键字参数,具体取决于是绘制单变量还是双变量图。
返回值:`ax`:matplotlib Axes
> 绘图的坐标轴。
**另请参见**
[`distplot`](seaborn.distplot.html#seaborn.distplot "seaborn.distplot")
灵活绘制单变量观测值分布图。
[`jointplot`](seaborn.jointplot.html#seaborn.jointplot "seaborn.jointplot")
绘制一个具有双变量和边缘分布的联合数据集。
范例
绘制一个简单的单变量分布:
```py
>>> import numpy as np; np.random.seed(10)
>>> import seaborn as sns; sns.set(color_codes=True)
>>> mean, cov = [0, 2], [(1, .5), (.5, 1)]
>>> x, y = np.random.multivariate_normal(mean, cov, size=50).T
>>> ax = sns.kdeplot(x)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-1.png](https://img.kancloud.cn/ea/1b/ea1b7fe2af48357c53daa3426b55cdc3_576x432.jpg)
在密度曲线下使用不同的颜色着色:
```py
>>> ax = sns.kdeplot(x, shade=True, color="r")
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-2.png](https://img.kancloud.cn/8c/da/8cda6100ffeaa0699da349913aaef3ba_576x432.jpg)
绘制一个双变量分布:
```py
>>> ax = sns.kdeplot(x, y)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-3.png](https://img.kancloud.cn/92/55/9255f773776d89b8297f5624b51eb11e_576x432.jpg)
使用填充轮廓:
```py
>>> ax = sns.kdeplot(x, y, shade=True)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-4.png](https://img.kancloud.cn/fc/be/fcbee1ce320b8810b669348bc4c551ba_576x432.jpg)
使用更多的轮廓级别和不同的调色板:
```py
>>> ax = sns.kdeplot(x, y, n_levels=30, cmap="Purples_d")
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-5.png](https://img.kancloud.cn/a9/98/a998438438b63c912e19f5da20c4c43c_576x432.jpg)
使用窄带宽:
```py
>>> ax = sns.kdeplot(x, bw=.15)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-6.png](https://img.kancloud.cn/3d/fa/3dfad8f56d8d6b1fa968fcc04eeae230_576x432.jpg)
在纵轴上绘制密度分布:
```py
>>> ax = sns.kdeplot(y, vertical=True)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-7.png](https://img.kancloud.cn/17/ad/17ad00a18b820791491fad678af460dc_576x432.jpg)
将密度曲线限制在数据范围内:
```py
>>> ax = sns.kdeplot(x, cut=0)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-8.png](https://img.kancloud.cn/b1/34/b134375f237ea68fdf945ea00d3982ac_576x432.jpg)
为轮廓添加一个颜色条:
```py
>>> ax = sns.kdeplot(x, y, cbar=True)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-9.png](https://img.kancloud.cn/3b/ec/3bec0f8a38b3361e3ecb4713f0367c87_576x432.jpg)
为双变量密度图绘制两个阴影:
```py
>>> iris = sns.load_dataset("iris")
>>> setosa = iris.loc[iris.species == "setosa"]
>>> virginica = iris.loc[iris.species == "virginica"]
>>> ax = sns.kdeplot(setosa.sepal_width, setosa.sepal_length,
... cmap="Reds", shade=True, shade_lowest=False)
>>> ax = sns.kdeplot(virginica.sepal_width, virginica.sepal_length,
... cmap="Blues", shade=True, shade_lowest=False)
```
![http://seaborn.pydata.org/_images/seaborn-kdeplot-10.png](https://img.kancloud.cn/b9/21/b9218609eaaf802255b9db39cce2e6ca_576x432.jpg)
- seaborn 0.9 中文文档
- Seaborn 简介
- 安装和入门
- 可视化统计关系
- 可视化分类数据
- 可视化数据集的分布
- 线性关系可视化
- 构建结构化多图网格
- 控制图像的美学样式
- 选择调色板
- seaborn.relplot
- seaborn.scatterplot
- seaborn.lineplot
- seaborn.catplot
- seaborn.stripplot
- seaborn.swarmplot
- seaborn.boxplot
- seaborn.violinplot
- seaborn.boxenplot
- seaborn.pointplot
- seaborn.barplot
- seaborn.countplot
- seaborn.jointplot
- seaborn.pairplot
- seaborn.distplot
- seaborn.kdeplot
- seaborn.rugplot
- seaborn.lmplot
- seaborn.regplot
- seaborn.residplot
- seaborn.heatmap
- seaborn.clustermap
- seaborn.FacetGrid
- seaborn.FacetGrid.map
- seaborn.FacetGrid.map_dataframe
- seaborn.PairGrid
- seaborn.PairGrid.map
- seaborn.PairGrid.map_diag
- seaborn.PairGrid.map_offdiag
- seaborn.PairGrid.map_lower
- seaborn.PairGrid.map_upper
- seaborn.JointGrid
- seaborn.JointGrid.plot
- seaborn.JointGrid.plot_joint
- seaborn.JointGrid.plot_marginals
- seaborn.set
- seaborn.axes_style
- seaborn.set_style
- seaborn.plotting_context
- seaborn.set_context
- seaborn.set_color_codes
- seaborn.reset_defaults
- seaborn.reset_orig
- seaborn.set_palette
- seaborn.color_palette
- seaborn.husl_palette
- seaborn.hls_palette
- seaborn.cubehelix_palette
- seaborn.dark_palette
- seaborn.light_palette
- seaborn.diverging_palette
- seaborn.blend_palette
- seaborn.xkcd_palette
- seaborn.crayon_palette
- seaborn.mpl_palette
- seaborn.choose_colorbrewer_palette
- seaborn.choose_cubehelix_palette
- seaborn.choose_light_palette
- seaborn.choose_dark_palette
- seaborn.choose_diverging_palette
- seaborn.load_dataset
- seaborn.despine
- seaborn.desaturate
- seaborn.saturate
- seaborn.set_hls_values