Вам просто нужно добавить эти точки с соответствующими значениями x как обычные точки, затем вы можете добавить линию наилучшего соответствия следующим образом:
import numpy as np
from numpy.polynomial.polynomial import polyfit
import matplotlib.pyplot as plt
x = np.array([1,2,3,4,5,6,6,6,7,7,8])
y = np.array([1,2,4,8,16,32,34,30,61,65,120])
# Fit with polyfit
b, m = polyfit(x, y, 1)
plt.plot(x, y, '.')
plt.plot(x, b + m * x, '-')
plt.show()
, который производит .
Обратите внимание, что прямая линия не соответствует моим примерным данным, но я не думал об этом при ее написании :) С polyfit вы также можете изменять степень соответствия, а также получать поля погрешностей в градиентах * и смещения.
* (или другие полиномиальные коэффициенты)