seaborn 的 lmplot 的输出没有绘制散点图和线性回归
Posted
技术标签:
【中文标题】seaborn 的 lmplot 的输出没有绘制散点图和线性回归【英文标题】:Output of seaborn's lmplot does not plot a scatterplot and linear regression 【发布时间】:2020-03-07 08:12:45 【问题描述】:第一次在 *** 上提问。
我在使用 seaborn 的 lmplot 时遇到了问题。
清理后我的数据集很简单,如下所示:image of data set
我正在尝试创建一个具有线性回归的 facetgrid 散点图(这是 lmplot 的用途),使用:
col 的站名(dtype 对象) x 轴的年份(dtype 整数) y 轴的月总计(dtype 整数)看起来像这样:lmplot example from seaborn
下面是我的代码,我期待一个类似于上面示例的散点图 + 回归。
ridership_year = ridership_mg.groupby(['stationame', 'year']).monthtotal.sum().reset_index()
sns.lmplot(x = 'year', y = 'monthtotal', col ='stationame', data= ridership_year, col_wrap = 5)
但是,图形输出是这样的: seaborn lmplot image
我可以做些什么来纠正这种情况?提前感谢您的帮助!
【问题讨论】:
您的意思是改用regplot
吗?
嘿,欧内斯特,绝对不是。我希望使用不同的站名作为 col 来制作 facetgrid,并对所有站名进行线性回归。应该使用 lmplot 的东西。
在这种情况下,您可能想花更多的时间在输出的问题上,因为根本不知道您的数据,很难看出问题所在。
嘿,感谢您的意见。我已经用更多信息编辑了帖子
似乎唯一的问题是 x 轴的比例?所以如果你放大它应该没问题。
【参考方案1】:
lmplot 中有一个名为 truncate 的参数,它将图形边界限制为数据。感谢您的帮助!
截断:布尔值,可选
默认情况下,绘制回归线以填充 x 轴范围 绘制散点图后。如果 truncate 为 True,它将改为 受数据限制。
sns.lmplot(x = 'year', y = 'monthtotal', col = 'stationame',
data = ridership_year, truncate = True,
col_wrap = 5)
【讨论】:
以上是关于seaborn 的 lmplot 的输出没有绘制散点图和线性回归的主要内容,如果未能解决你的问题,请参考以下文章
Seaborn使用lmplot函数可视化散点图并添加回归曲线以及回归线对应的置信区间(Scatter plot with regression line)
Python使用matplotlib可视化散点图使用seaborn中的lmplot函数可视化不同分组散点图的最优线性回归拟合曲线(Scatter plot with regression line)
Python使用matplotlib可视化散点图使用seaborn中的lmplot函数使用多子图可视化不同分组的散点图最优拟合线性回归曲线
Seaborn使用lmplot函数可视化散点图并添加回归曲线移除默认的回归曲线置信区间(Scatter plot with regression lineRemove CI band)