使用 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.regplot()
函数不同,seaborn.lmplot()
函数将 seaborn.FacetGrid()
与 seaborn.regplot()
结合在一起。
FacetGrid()
用于可视化数据分布与其他数据子集之间的关系,并可用于为多个图创建网格。它适用于提供行、列和色调的三个轴。当我们处理复杂的数据集时,它非常有用。
我们还可以使用 seaborn.lmplot()
函数使用不同的参数自定义最终图形。我们可以为 line_kws
和 scatter_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')
请注意,fit_reg
参数默认设置为 True。我们的数据集有多个类别,因此我们能够绘制多条回归线。如果我们删除了 hue
参数,那么就会得到一个单一的回归图。我们还可以进一步使用许多参数进行回归。其中一些包括用于向数据添加一些噪声的 jitter
参数,或用于绘制给定估计值的 estimator
参数。
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