Seaborn.kdeplot() 方法
Seaborn.kdeplot() 方法有助于使用核密度估计绘制单变量或双变量分布。
与直方图类似,核密度估计图是一种用于显示数据集中观测值分布的技术。 核密度估计(KDE)使用一个或多个维度上的连续概率密度曲线来描述数据。
语法
以下是 Seaborn.kdeplot() 方法的语法
Seaborn.kdeplot(x=None, *, y=None, shade=None, vertical=False, kernel=None, bw=None, gridsize=200, cut=3, clip=None, legend=True, cumulative=False, shade_lowest=None, cbar=False, cbar_ax=None, cbar_kws=None, ax=None, weights=None, hue=None, palette=None, hue_order=None, hue_norm=None, multiple='layer', common_norm=True, common_grid=False, levels=10, thresh=0.05, bw_method='scott', bw_adjust=1, log_scale=None, color=None, fill=None, data=None, data2=None, warn_singular=True, **kwargs)
参数
下面讨论了 seaborn.kdeplot() 方法的一些参数。
S.No | 参数及说明 |
---|---|
1 | x,y 在 x,y 轴上表示的变量。 |
2 | Hue 这将产生具有不同颜色的元素。 它是一个分组变量。 |
3 | Levels 此参数用于指定在图中绘制等高线的级别数。 |
4 | Cmap Cmap 或颜色图用于指定绘制地图时使用的颜色。 采用不同类型的值,例如蓝色、绿色、PiYg 等。 |
5 | Bw_adjust 获取数值并随着传递的值增加而平滑绘制的曲线。 |
6 | Thresh 用于指定绘制轮廓的最低级别。 取值从 0 到 1。 |
7 | Cumulative 随着 bin 数量的增加绘制累积计数。 |
8 | Multiple 与单变量数据相关,取值:stacked、layer、fill。 |
9 | Log_scale 将坐标轴刻度设置为对数,并且绘制的值采用对数刻度。 |
10 | Legend 布尔值。 如果为false,则不打印出语义变量的图例。 |
让我们在继续开发绘图之前加载 seaborn 库和数据集。
载入seaborn 库
要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
需要哪些数据?
需要双变量数据来理解 kdeplot() 方法中的大部分参数。 尽管此方法提供了为单变量数据绘制 kdeplot() 的方法,但它具有更多参数来绘制双变量数据,比如航班数据集,因为它包含双变量数据。
(双变量数据是指数据依赖于多个变量,单变量数据是指数据仅依赖于一个变量。)
加载数据集
在本文中,我们将使用 seaborn 库中内置的航班数据集。 以下命令用于加载数据集。
flights=sns.load_dataset("flights")
下面提到的命令用于查看数据集中的前 5 行。 这使我们能够了解哪些变量可用于绘制图形。
flights.head()
以下是上面这段代码的输出。
index,year,month,passengers 0,1949,Jan,112 1,1949,Feb,118 2,1949,Mar,132 3,1949,Apr,129 4,1949,May,121
现在我们已经加载了数据,我们将继续绘制数据。
示例 1
在此示例中,我们将了解如何使用 seaborn.kdeplot() 方法为宽格式数据集中的每一列绘制核密度估计值。 为此,可以使用以下代码行。
import seaborn as sns import matplotlib.pyplot as plt flights=sns.load_dataset("flights") flights.head() sns.kdeplot(data=flights) plt.show()
输出
上面代码的输出图如下。
示例 2
现在,我们将看到如何为给定的数据集绘制基本的 kdeplot。
import seaborn as sns import matplotlib.pyplot as plt flights=sns.load_dataset("flights") flights.head() sns.kdeplot(data=flights, x="year", y="passengers") plt.show()
输出
上面代码片段的输出图如下所示。
示例 3
在这个例子中,我们将看到如何使用 fill 参数。 因此,此参数用于在定义的图形轮廓中填充颜色。 在下面的代码中,考虑了 x、y 和 hue 参数,并且由于将 True 传递给 fil 参数,因此获得的图形填充了颜色。
import seaborn as sns import matplotlib.pyplot as plt flights=sns.load_dataset("flights") flights.head() sns.kdeplot(data=flights, x="year", y="passengers",fill=True,hue="month") plt.show()
输出
以上代码片段的输出结果如下,
这里,如上所述,图形的轮廓被填充。
示例 4
我们将在这个例子中理解 levels 参数。 Levels 参数采用要在图形中绘制的等高线级别数,它可以是整数或向量值。 此参数仅在双变量数据的情况下相关。 在这里,cmap 参数用于更改绘图的颜色。 cmap 参数可以采用不同的值,在此示例中,PiYG 被传递给它,生成的颜色范围从粉红色到绿色。 cmap 可以采用的其他一些值包括蓝色、绿色等。
import seaborn as sns import matplotlib.pyplot as plt flights=sns.load_dataset("flights") flights.head() sns.kdeplot(data=flights, x="year", y="passengers",levels=10, cmap="PiYG") plt.show()
输出
使用上述参数得到的图如下所示。
这就是 kdeplot() 方法及其参数的用法。