Seaborn.JointGrid 类

Seaborn.JointGrid 类用作 Grid,用于绘制带有边际单变量图的双变量图。

通常,已经可以使用名为 jointplot() 的图形级接口绘制许多图; 但是,如果我们需要更灵活的数据可视化,我们可以使用这个类。 该类在基础上设置网格并在内部存储数据以使绘图更容易

seaborn.JointGrid 的语法如下

class seaborn.JointGrid(**kwargs)
__init__(self, *, x=None, y=None, data=None, height=6, ratio=5, space=0.2, dropna=False, xlim=None, ylim=None, size=None, marginal_ticks=False, hue=None, palette=None, hue_order=None, hue_norm=None)

seaborn.JointGrid参数

这个类的一些参数如下所示。

S.No 参数及说明
1 Data

采用数据框,其中每一列都是一个变量,每一行都是一个观察值。

2 hue

指定将显示在特定网格面上的数据部分的变量。 要调节此变量的级别顺序,请参阅 var order 参数。

3 Kind

从{'scatter', 'kde', 'hist', 'reg'}中获取值,然后确定要绘制的图的类型。

4 ratio

获取数值并确定关节轴高度与边缘轴高度的比率。

5 Height

采用标量值并确定刻面的高度。

6 Color

将 matplotlib 颜色作为输入并确定不使用色调映射时的单一颜色规范。

7 Marginal_ticks

采用布尔值,如果为 False,则抑制边缘图的计数/密度轴上的刻度。

8 hue_order

将列表作为输入,分面变量级别的顺序由此顺序确定。

让我们在继续开发绘图之前加载 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

在下面的示例中,我们将通过将提示数据集和 x、y 列传递给它来绘制一个简单的 JointGrid。 这将生成一个 JointGrid 空面。

import seaborn as sns
import matplotlib.pyplot as plt
tips=sns.load_dataset("tips")
tips.head()
sns.JointGrid(data=tips, x="total_bill", y="tip")
plt.show()

输出

产生的输出图如下,

seaborn jointgrid 类

示例 2

在此示例中,我们将在 joint grid切面绘制散点图。 在刻面内部绘制散点图,在刻面边缘绘制核密度估计图。

import seaborn as sns
import matplotlib.pyplot as plt
tips=sns.load_dataset("tips")
tips.head()
g = sns.JointGrid(data=tips, x="total_bill", y="tip")
g.plot(sns.scatterplot, sns.kdeplot)
plt.show()

输出

输出图如图所示,

jointgrid_class

示例 3

与上例类似,使用plot()函数在 joint grid切面内绘制散点图,在切面边缘绘制直方图。 除了这些,还有一些其他参数被传递给该函数,例如 edge color、line widthalpha

这里,edge color 是一个特殊的参数 hat 取值,matplotlib 颜色或"grey"。 它是一个可选参数。 每个点周围线条的色调由该参数决定。 如果您通过"grey",则用于点主体的配色方案决定了亮度。

Linewidth 是一个参数,它采用浮点值并确定划分每个单元格的线的宽度。 接下来,传递 alpha 参数。 我们可以利用 plot 函数中的 alpha 参数来修改绘图的透明度。 它的值默认设置为 1。此选项的值介于 0 和 1 之间,随着值接近 0,绘图变得更加半透明和不可见。

import seaborn as sns
import matplotlib.pyplot as plt
tips=sns.load_dataset("tips")
tips.head()
g = sns.JointGrid(data=tips, x="total_bill", y="sex")
g.plot(sns.scatterplot, sns.histplot, alpha=.5, edgecolor=".5", linewidth=.5)
plt.show()

输出

现在得到的图如下,

jointgrid

示例 4

也可以在 JointGrid 面的边缘绘制分类图。 在这个例子中,我们将如何绘制箱线图。

import seaborn as sns
import matplotlib.pyplot as plt
tips=sns.load_dataset("tips")
tips.head()
g = sns.JointGrid(data=tips, x="total_bill", y="tip")
g.plot(sns.regplot, sns.boxplot)
plt.show()

输出

得到的输出如下 −

seaborn jointgrid

❮Seaborn 多图网格简介