Seaborn.boxplot() 方法
seaborn.boxplot() 方法用于绘制关于类别的分布。 此方法以能够在变量之间或分类变量的不同级别之间进行比较的方式显示数据的分布。
传递给此方法的输入可以是各种类型,例如数组、宽格式数据、长格式数据或向量列表。
语法
以下是 seaborn.boxplot() 方法的语法 −
seaborn.boxplot(*, x=None, y=None, hue=None, data=None, order=None, hue_order=None, orient=None, color=None, palette=None, saturation=0.75, width=0.8, dodge=True, fliersize=5, linewidth=None, whis=1.5, ax=None, **kwargs)
参数
下面讨论了此方法中的一些参数。
S.No | 参数及说明 |
---|---|
1 | x,y 这些参数将变量名称作为绘制长格式数据的输入。 |
2 | data 这是用于绘制图形的数据框。 |
3 | hue 数据框中绘制图形所需的变量名称。 |
4 | linewidth 此参数采用浮动值并确定构成图中元素的灰线的宽度。 |
5 | dodge 此参数采用布尔值。 如果我们使用色调嵌套,将 true 传递给此参数将分离不同色调级别的条带。 如果传递了 False,每个级别的点将被绘制在彼此之上。 |
6 | orient 它取值"h"或"v",并以此为基础确定图形的方向。 |
7 | color matplotlib 颜色作为输入,这决定了所有元素的颜色。 |
8 | size 此参数决定绘制的图中标记的半径。 |
加载 seaborn 库
让我们在继续开发绘图之前加载 seaborn 库和数据集。 要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
加载数据集
在本文中,我们将使用 seaborn 库中内置的泰坦尼克号数据集。 以下命令用于加载数据集。
titanic=sns.load_dataset("titanic")
下面提到的命令用于查看数据集中的前 5 行。 这使我们能够了解哪些变量可用于绘制图形。
titanic.head()
以下是上面这段代码的输出。
index,survived,pclass,sex,age,sibsp,parch,fare,embarked,class,who,adult_male,deck,embark_town,alive,alone 0,0,3,male,22.0,1,0,7.25,S,Third,man,true,NaN,Southampton,no,false 1,1,1,female,38.0,1,0,71.2833,C,First,woman,false,C,Cherbourg,yes,false 2,1,3,female,26.0,0,0,7.925,S,Third,woman,false,NaN,Southampton,yes,true
现在我们已经加载了数据集,我们将探索几个示例。
示例 1
我们将了解可用于绘制箱线图 () 的简单快捷方式。 不是将数据和 x 作为单独的参数传递,而是可以将它们组合起来并作为 x 参数中的单个参数传递。
在此示例中,我们将使用 titanic 数据集,并将数据集的年龄列传递给 x。 以下代码行可用于执行此操作。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.boxplot(x=titanic["age"]) plt.show()
输出
上面代码行的输出如下所示。
示例 2
现在,我们将看到如何通过将 x、y 和 hue 参数传递给 seaborn.boxplot() 方法来绘制简单的箱线图。 由于使用了 titanic 数据集,因此考虑了 who、fare 和 alive 列。
这里,boxplot() 是一个分类图,其中一个用于绘图的列需要是分类的,所以在这个例子中,x 被传递了一个分类参数,而 hue 应该总是被传递一个分类参数。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.boxplot(x="who", y="fare", hue="alive",data=titanic) plt.show()
输出
上面这行代码的输出结果如下,
示例 3
seaborn.boxplot() 方法中有很多参数,我们将看到另一个名为 linewidth 的参数的工作原理。 此参数采用浮动值并确定构成图中元素的灰线的宽度。
下面的代码行可以用来理解线宽参数的工作原理。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.boxplot(x="who", y="fare", hue="embark_town",data=titanic,linewidth=3) plt.show()
输出
得到的输出如下 −
示例 4
Orient 是 seaborn.boxplot() 方法中的一个参数,可用于更改图形的方向,它有两个值,"v"或"h"。 在这个例子中,我们将了解这个参数的工作原理。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.boxplot(x="fare", y="who", hue="embark_town",data=titanic,orient="h") plt.show()
输出
在上面的代码行中,方向设置为"h",即水平。 由此获得的输出可以在下面看到。
要水平定位您的图,需要一个数值 x 变量,以便在上面的示例中传递 fare 并将 orient 设置为"v",y 轴的变量必须是数值。这就是如何使用 seaborn.boxplot() 方法的 orient 参数。