seaborn.regplot

    绘制数据和线性回归模型拟合。

    估算回归模型有许多互斥的选项。查看这个教程 来了解更多的信息。

    参数:x,y:字符串,序列(series)或者是向量数组(vector array)

    输入变量。 如果是字符串,应该与中的列名相对应。 使用pandas对象时,轴将被Series的名字标记。

    data:DataFrame

    Tidy (“long-form”)格式的DataFrame,其中每列为一个变量,每行为一个观测样本。

    x_estimator:可调用的映射向量 ->标量,可选

    将此函数应用于x的每个唯一值并绘制结果的估计值。当x是离散变量时,这是十分有用的。如果给出x_ci,则该估计将被引导并且将绘制置信区间。

    x_bins:整数或向量,可选

    x变量加入离散区间,然后估计中心趋势和置信区间。 此分箱仅影响散点图的绘制方式; 回归仍然适合原始数据。该参数被解释为均匀大小(不必要间隔)的箱的数量或箱中心的位置。使用此参数时,它意味着x_estimator的默认值为numpy.mean

    x_ci:”ci”,’sd’,位于 [0, 100]之间的整数或None,可选

    绘制“x”离散值的集中趋势时使用的置信区间的大小。 如果为“ci”,遵循ci参数的值。 如果是“sd”,则跳过bootstrapping并显示每个bin中观察值的标准偏差。

    scatter:布尔值,可选

    如果为 True,则绘制带有基础观测值(或x_estimator 值)的散点图。

    fit_reg:布尔值,可选

    如果为 True,则估计并绘制与 xy 变量相关的回归模型。

    ci:位于 [0, 100]之间的整数或None,可选

    n_boot:整数,可选

    用于估计ci的自助法(bootstrap)重采样数。 默认值试图在时间和稳定性之间找到平衡; 你可能希望为“最终”版本的图像增加此值。

    unitsdata,中的变量名,可选

    如果xy观察结果嵌套在采样单元中,则可以在此处指定。在通过对所有的单元和观察样本(在单元内)执行重新采样的多级自助法(multilevel bootstrap)来计算置信区间时将考虑这一点。 否则,这不会影响估计或绘制回归的方式。

    order:整数,可选

    如果order大于1,使用numpy.polyfit来估计多项式回归。

    logistic:布尔值,可选

    :布尔值,可选

    如果为“True”,则使用statsmodels来估计非参数lowess模型(局部加权线性回归)。 请注意,目前无法为此类模型绘制置信区间。

    robust:布尔值,可选

    如果为“True”,则使用statsmodels来估计稳健回归。 这将削弱异常值。 请注意,这比标准线性回归的计算密集程度要大得多,因此您可能希望减少引导程序重新采样(n_boot)的数量或将 ci设置为“无”。

    logx:布尔值,可选

    如果为 True,则估计形式y~log(x)的线性回归,但在输入空间中绘制散点图和回归模型。 请注意,x必须为正才能正常工作。

    {x,y}_partialdata 中的字符串或矩阵

    truncate:布尔值,可选

    默认情况下,绘制回归线以在绘制散点图后填充x轴限制。 如果truncateTrue,它将改为受到数据本身限制的限制。

    {x,y}_jitter:浮点数,可选

    将此大小的均匀随机噪声添加到“x”或“y”变量中。 在拟合回归之后,噪声被添加到数据的副本中,并且仅影响散点图的外观。 在绘制采用离散值的变量时,这会很有用。

    label:字符串

    要应用于散点图或回归线(如果scatter为’False`)的标签,以便在图例中使用。

    color:matplotlib 颜色

    适用于所有绘图元素的颜色; 将被scatter_kwsline_kws中传递的颜色取代。

    marker:matplotlib标记代码或标记代码列表,可选

    散点图的标记。

    {scatter,line}_kws:字典

    传递给plt.scatterplt.plot的附加关键字参数。

    ax:matplotlib Axes对象,可选

    绘制到指定轴对象,否则在当前轴对象上绘图。

    返回值:ax:matplotlib Axes对象

    也可以看看

    注意

    lmplot() 函数密切相关,但是前者是坐标轴级别的函数,而后者是结合了 和 FacetGrid的图像级别的函数。

    通过 和 pairplot() 函数来组合 和 JointGrid 或 是十分容易的,虽然这些函数不直接接受所有 regplot()的参数。

    例子

    绘制DataFrame中两个变量之间的关系:

    1. >>> import seaborn as sns; sns.set(color_codes=True)
    2. >>> tips = sns.load_dataset("tips")
    3. >>> ax = sns.regplot(x="total_bill", y="tip", data=tips)

    利用两个定义为numpy数组的变量进行绘图; 使用不同的颜色:

    1. >>> import numpy as np; np.random.seed(8)
    2. >>> mean, cov = [4, 6], [(1.5, .7), (.7, 1)]
    3. >>> x, y = np.random.multivariate_normal(mean, cov, 80).T

    http://seaborn.pydata.org/_images/seaborn-regplot-2.png

    利用两个定义为pandas Series的变量来进行绘图; 使用不同的标记:

    1. >>> import pandas as pd
    2. >>> x, y = pd.Series(x, name="x_var"), pd.Series(y, name="y_var")
    3. >>> ax = sns.regplot(x=x, y=y, marker="+")

    使用68%置信区间,该区间对应于估计的标准误差:

    http://seaborn.pydata.org/_images/seaborn-regplot-4.png

    使用离散的x变量进行绘图并添加一些抖动:

    1. >>> ax = sns.regplot(x="size", y="total_bill", data=tips, x_jitter=.1)

    绘制一个离散的x变量,显示唯一值的均值和置信区间:

    1. >>> ax = sns.regplot(x="size", y="total_bill", data=tips,
    2. ... x_estimator=np.mean)

    http://seaborn.pydata.org/_images/seaborn-regplot-6.png

    将连续的变量划分为分离的区间并进行绘图:

      拟合高阶多项式回归并截断模型预测:

      http://seaborn.pydata.org/_images/seaborn-regplot-8.png

      拟合稳健回归并且不绘制置信区间:

      1. >>> ax = sns.regplot(x="x", y="y", data=ans.loc[ans.dataset == "III"],
      2. ... scatter_kws={"s": 80},
      3. ... robust=True, ci=None)

      对数据运用逻辑回归; 抖动y变量并使用较少的bootstrap迭代:

      1. >>> tips["big_tip"] = (tips.tip / tips.total_bill) > .175
      2. >>> ax = sns.regplot(x="total_bill", y="big_tip", data=tips,
      3. ... logistic=True, n_boot=500, y_jitter=.03)

      http://seaborn.pydata.org/_images/seaborn-regplot-10.png

      使用 log(x) 拟合回归模型并截断模型预测:

      1. ... x_estimator=np.mean, logx=True, truncate=True)