Python Matplotlib散点():多项式回归线
是否可以在matplotlib中的散点()上执行多项式回归线 这是我的图表:Python Matplotlib散点():多项式回归线,python,matplotlib,Python,Matplotlib,是否可以在matplotlib中的散点()上执行多项式回归线 这是我的图表: 是否可能有eat数据集的回归线?如果是的话,你能解释一下我怎么做吗 不确定是否可以仅使用matplotlib完成,但您始终可以单独计算回归并绘制回归。我留下了一个使用scikit学习计算回归线的示例代码 import numpy as np from sklearn.preprocessing import PolynomialFeatures import matplotlib.pyplot as plt from
是否可能有eat数据集的回归线?如果是的话,你能解释一下我怎么做吗 不确定是否可以仅使用matplotlib完成,但您始终可以单独计算回归并绘制回归。我留下了一个使用scikit学习计算回归线的示例代码
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.pipeline import make_pipeline
x = [1, 2, 3, 4, 5, 8, 10]
y = [1.1, 3.8, 8.5, 16, 24, 65, 99.2]
model = make_pipeline(PolynomialFeatures(2), LinearRegression())
model.fit(np.array(x).reshape(-1, 1), y)
x_reg = np.arange(11)
y_reg = model.predict(x_reg.reshape(-1, 1))
plt.scatter(x, y)
plt.plot(x_reg, y_reg)
plt.show()
输出:
我建议您使用Seaborn图书馆。它构建在matplotlib之上,具有许多统计打印例程。查看
regplot
和lmplot
的示例:
在您的情况下,您可以执行以下操作:
import pandas as pd
import seaborn as sns
df = pd.DataFrame.from_dict({"Number of Queens": [1, 1, 1, 2, 2, 2, 3,
3, 3, 4, 4, 4],
"Time (sec)": [0.01, 0.02, 0.03, 0.04, 0.04, 0.04,
0.05, 0.09, 0.12, 0.14, 0.15, 0.16]})
sns.lmplot('Number of Queens', 'Time (sec)', df, order=1)
如果您想要不同组的回归线,请添加一列组标签,并将其添加到
lm_plot
的hue
参数中。您可以向我们显示用于生成这些图的代码吗?更新的示例代码!!非常感谢。
import pandas as pd
import seaborn as sns
df = pd.DataFrame.from_dict({"Number of Queens": [1, 1, 1, 2, 2, 2, 3,
3, 3, 4, 4, 4],
"Time (sec)": [0.01, 0.02, 0.03, 0.04, 0.04, 0.04,
0.05, 0.09, 0.12, 0.14, 0.15, 0.16]})
sns.lmplot('Number of Queens', 'Time (sec)', df, order=1)