Seaborn.displot() 方法
seaborn.displot() 方法是一个函数,它提供对数种可视化数据单变量和双变量分布的方法的访问。 与 Seaborn 库中的其他函数一样,此函数允许绘制由跨多个子图的语义映射定义的数据子集。
一组数值的分布和范围根据分布图中的维度表示。
语法
以下是 Seaborn.displot() 方法的语法
seaborn.displot(data=None, *, x=None, y=None, hue=None, row=None, col=None, weights=None, kind='hist', rug=False, rug_kws=None, log_scale=None, legend=True, palette=None, hue_order=None, hue_norm=None, color=None, col_wrap=None, row_order=None, col_order=None, height=5, aspect=1, facet_kws=None, **kwargs)
参数
displot() 方法的一些参数在下面讨论。
S.No | 参数及说明 |
---|---|
1 | x,y 在 x,y 轴上表示的变量。 |
2 | Hue 这将产生具有不同颜色的元素。 它是一个分组变量。 |
3 | Legend 布尔值,如果为 false,它会抑制图例在图中显示。 |
4 | Row,col 这些参数定义了要绘制的子集。 |
5 | Data 此参数采用输入数据结构。 那是映射或序列。 |
6 | rug 布尔值,如果为 true,则显示边缘刻度。 |
7 | Kind 对应于要绘制的图的种类。 可以是 hist、kde 或 ecdf。 |
8 | Palette 此参数用于设置贴图的色调。 它可以是明亮的、柔和的、深色的等等。 |
9 | Color 当未指定色调映射时,用于指定单一颜色。 |
10 | Aspect 根据这个值,确定绘图的大小。 |
11 | Log_scale 将轴刻度设置为对数,绘制的值采用对数刻度。 |
此图提供的默认图是直方图。 让我们在继续开发绘图之前加载 seaborn 库和数据集。
载入seaborn 库
要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
加载数据集
在本文中,我们将使用 seaborn 库中内置的 Tips 数据集。 以下命令用于加载数据集。
tips=sns.load_dataset("tips")
下面提到的命令用于查看数据集中的前 5 行。 这使我们能够了解哪些变量可用于绘制图形。
tips.head()
以下是上面这段代码的输出。
index,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.5,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
现在我们已经加载了数据,我们将继续绘制数据。
示例 1
在这个例子中,我们将使用单变量分布的 seabron.displot() 方法绘制一个简单的分布图。 默认绘图类型是此方法的直方图。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill") plt.show()
输出
如我们所见,总帐单列绘制为针对 y 轴计数的直方图。
示例 2
在此示例中,我们将看到使用 kind 参数并将不同的参数传递给它。
kind 参数采用以下三个值之一:kde、ecdf 和 hist。
下面的一段代码,输出的是经验累积分布图。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",kind="ecdf") plt.show()
输出
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",kind="kde") plt.show()
示例 3
在这个例子中,我们将绘制双变量分布图。 这可以通过将数据传递给方法的 x 和 y 参数来完成。
sns.displot(data=tips, x="total_bill",y="tip") import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",y="tip") plt.show()
输出
得到的双变量图如下。
绘制双变量图并将值传递给 kind 参数。
sns.displot(data=tips, x="total_bill",y="tip",kind="kde") import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",y="tip",kind="kde") plt.show()
示例 4
我们将绘制一个双变量分布,并将不同的参数传递给该方法,并查看图表中的变化。
首先,我们将传递 x、y 和 hue 参数并绘制 kde 图。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",y="tip",hue="sex",kind="kde") plt.show()
输出
上面的代码片段将产生下图。
示例 5
在此示例中,我们将看到在单变量图中使用多个关键字参数。 在这里,multiple 是一个额外的关键字参数,允许自定义图形。
Multiple 本质上是将值作为堆栈,然后将数据堆叠在绘图中。 这可以在下图中看到。
sns.displot(data=tips, x="total_bill",hue="sex",multiple="stack") import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.displot(data=tips, x="total_bill",hue="sex",multiple="stack") plt.show()
输出
以上代码片段的输出结果如下