seaborn 中没有线性拟合的散点图
Scatterplot without linear fit in seaborn
我想知道是否有办法关闭 seaborn lmplot
中的线性拟合,或者是否有只生成散点图的等效函数。
当然,我也可以使用 matplotlib,但是,我发现 seaborn 的语法和美学非常吸引人。例如,。我想绘制以下情节
import seaborn as sns
sns.set(style="ticks")
df = sns.load_dataset("anscombe")
sns.lmplot("x", "y", data=df, hue='dataset')
没有像这样的线性拟合:
from itertools import cycle
import numpy as np
import matplotlib.pyplot as plt
color_gen = cycle(('blue', 'lightgreen', 'red', 'purple', 'gray', 'cyan'))
for lab in np.unique(df['dataset']):
plt.scatter(df.loc[df['dataset'] == lab, 'x'],
df.loc[df['dataset'] == lab, 'y'],
c=next(color_gen),
label=lab)
plt.legend(loc='best')
将 fit_reg
参数设置为 False
:
sns.lmplot("x", "y", data=df, hue='dataset', fit_reg=False)
这并没有直接回答问题,但可能会帮助那些在这里找到方法的人,他们只想做一个普通的旧散点图。
As of version 0.9.0 seaborn now has a scatterplot
method.
import seaborn as sns
sns.set(style="ticks")
df = sns.load_dataset("anscombe")
sns.scatterplot("x", "y", data=df, hue='dataset')
我建议使用 sns.scatterplot()
而不是 sns.lmplot()
# import libaries
import seaborn as sns
# load tips dataset from GitHub seaborn repository
tips_df = sns.load_dataset("tips")
#create scatter plot
sns.scatterplot(x = "tip", y = "total_bill", data = tips_df, hue ="sex")
要了解更多详细信息,请按照 seaborn scatter plot 使用 sns.scatterplot() 教程
我想知道是否有办法关闭 seaborn lmplot
中的线性拟合,或者是否有只生成散点图的等效函数。
当然,我也可以使用 matplotlib,但是,我发现 seaborn 的语法和美学非常吸引人。例如,。我想绘制以下情节
import seaborn as sns
sns.set(style="ticks")
df = sns.load_dataset("anscombe")
sns.lmplot("x", "y", data=df, hue='dataset')
没有像这样的线性拟合:
from itertools import cycle
import numpy as np
import matplotlib.pyplot as plt
color_gen = cycle(('blue', 'lightgreen', 'red', 'purple', 'gray', 'cyan'))
for lab in np.unique(df['dataset']):
plt.scatter(df.loc[df['dataset'] == lab, 'x'],
df.loc[df['dataset'] == lab, 'y'],
c=next(color_gen),
label=lab)
plt.legend(loc='best')
将 fit_reg
参数设置为 False
:
sns.lmplot("x", "y", data=df, hue='dataset', fit_reg=False)
这并没有直接回答问题,但可能会帮助那些在这里找到方法的人,他们只想做一个普通的旧散点图。
As of version 0.9.0 seaborn now has a scatterplot
method.
import seaborn as sns
sns.set(style="ticks")
df = sns.load_dataset("anscombe")
sns.scatterplot("x", "y", data=df, hue='dataset')
我建议使用 sns.scatterplot()
sns.lmplot()
# import libaries
import seaborn as sns
# load tips dataset from GitHub seaborn repository
tips_df = sns.load_dataset("tips")
#create scatter plot
sns.scatterplot(x = "tip", y = "total_bill", data = tips_df, hue ="sex")
要了解更多详细信息,请按照 seaborn scatter plot 使用 sns.scatterplot() 教程