首页 > 解决方案 > 线性回归 - 图上的方程 - Python

问题描述

嘿,我想做线性回归并创建一个图,该图也将是我的模型的方程。我有以下代码:

from sklearn.linear_model import LinearRegression

X = np.array((1,2, 3, 4))
Y = np.array((3, 1, 4, 5))

X = X.reshape((-1, 1))
model = LinearRegression().fit(X, Y)


plt.scatter(X, Y, color='g')
plt.plot(X, model.predict(X),color='k')

print(model.coef_[0], model.intercept_)

如何自动在我的情节上写方程?

标签: pythonmathplotlinear-regression

解决方案


Matplotlib 图中的文本

Matplotlib 具有广泛的文本支持,包括对数学表达式的支持、对光栅和矢量输出的 truetype 支持、具有任意旋转的换行符分隔文本以及 unicode 支持。

官方文档中,以下命令用于在 pyplot 界面和面向对象的 API 中创建文本:

pyplot API 面向对象的 API 描述
文本 文本 在轴的任意位置添加文本。
注释 注释 在轴的任意位置添加带有可选箭头的注释。
xlabel set_xlabel 将标签添加到 Axes 的 x 轴。
ylabel set_ylabel 将标签添加到 Axes 的 y 轴。
标题 设置标题 为轴添加标题。
无花果文本 文本 在图形的任意位置添加文本。
字幕 字幕 为图形添加标题。
from sklearn.linear_model import LinearRegression
import numpy as np
import matplotlib.pyplot as plt

X = np.array((1,2, 3, 4))
Y = np.array((3, 1, 4, 5))

X = X.reshape((-1, 1))
model = LinearRegression().fit(X, Y)

fig = plt.figure()
ax = fig.add_subplot()
plt.scatter(X, Y, color='g')
plt.plot(X, model.predict(X),color='k')
ax.text(1, 4, r'LR equation: $Y = a + bX$', fontsize=10)

print(model.coef_[0], model.intercept_)

阴谋:

在此处输入图像描述


推荐阅读