使用 seaborn.lmplot() 函数绘制图形

Manav Narula 2021年10月2日 2021年7月16日
使用 seaborn.lmplot() 函数绘制图形

seaborn 模块用于在 Python 中创建统计图。它建立在 matplotlib 模块之上,因此使用起来非常简单。

seaborn.lmplot() 函数使用给定的数据在 FacetGrid 上创建一个基本的散点图。

请参考以下代码。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import random

x = range(50)
y = random.sample(range(100),50)
cat = [i for i in range(2)]*25
df = pd.DataFrame({"x": x,
                   "y": y,
                  'Category':cat})

sns.lmplot(x= 'x', y = 'y', data = df, fit_reg = False, hue = 'Category')

seaborn lmplot 函数

但是,此函数的使用超出了绘制散点图的范围。它还可用于通过在图中绘制可选的回归线来了解数据之间的关系。它也可以用于逻辑回归。

与也用于执行简单回归和绘制数据的 seaborn.regplot() 函数不同,seaborn.lmplot() 函数将 seaborn.FacetGrid()seaborn.regplot() 结合在一起。

FacetGrid() 用于可视化数据分布与其他数据子集之间的关系,并可用于为多个图创建网格。它适用于提供行、列和色调的三个轴。当我们处理复杂的数据集时,它非常有用。

我们还可以使用 seaborn.lmplot() 函数使用不同的参数自定义最终图形。我们可以为 line_kwsscatter_kws 参数提供必要的自定义,例如绘图的颜色,作为字典的键值对。

在下面的代码中,我们将使用此函数绘制带有回归线的图形。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import random

x = range(50)
y = random.sample(range(100),50)
cat = [i for i in range(2)]*25
df = pd.DataFrame({"x": x,
                   "y": y,
                  'Category':cat})

sns.lmplot(x= 'x', y = 'y', data = df, hue = 'Category')

seaborn lmplot 函数

请注意,fit_reg 参数默认设置为 True。我们的数据集有多个类别,因此我们能够绘制多条回归线。如果我们删除了 hue 参数,那么就会得到一个单一的回归图。我们还可以进一步使用许多参数进行回归。其中一些包括用于向数据添加一些噪声的 jitter 参数,或用于绘制给定估计值的 estimator 参数。

Author: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn