很抱歉,如果已经有人问过我,但我找不到任何答案。我想在plt图上添加一条总体趋势线。样本数据:
import pandas as pd
data = pd.DataFrame({'year': [2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018,
2019],
'value': [2, 5, 8, 4, 1, 6, 10, 14, 8]})
import matplotlib.pyplot as plt
plt.rcParams['figure.figsize'] = [28, 26]
data.plot(x = "year", y = "value", fontsize = 30)
plt.xlabel('Time', fontsize = 30)
如何添加趋势线?
答案 0 :(得分:3)
如果您正在寻找简单的线性回归拟合,则可以直接使用seaborn
中的lmplot
或regplot
。它执行线性回归并以95%置信区间(阴影,默认值)绘制拟合(线)。您也可以使用NumPy执行拟合。如果您想使用NumPy,请在下面发表评论,我会进行更新。
import seaborn as sns
# Your DataFrame here
# sns.lmplot(x='year',y='value',data=data,fit_reg=True)
sns.regplot(x='year',y='value',data=data, fit_reg=True)
从文档
regplot()和lmplot()函数密切相关,但是前者是轴级函数,而后者是结合regplot()和
FacetGrid
的图形级函数,允许您绘制网格中不同子图上的数据之间的条件关系。