python - 绘制数据并找到最佳拟合线

标签 python

这是一个简单的情节,但最适合的代码行是我无法工作的。请有人帮助告诉我出了什么问题。 我的代码:

x=[93850,92115,90400,88707]
y=[49,48,47,46]
def curve(x,m,c):
    y_=(m*x)+c
    return y_
popt,pcov=curve_fit(curve,x,ydata=y,p0=[1.02,0])
plt.plot(x,curve(x,1,0))
plt.plot(x,m*x+c)
plt.plot(x,y)

错误: enter image description here

最佳答案

如果我理解正确,你希望实现这样的目标:

# pip install matplotlib

import matplotlib.pyplot as plt

x = [93850,92115,90400,88707]
y = [49,48,47,46]


def curve(x,m,c):
    return [(i*m)+c for i in x]

plt.plot(x, curve(x,1,0))
plt.plot(x, y)

plt.show() 

返回

enter image description here

关于python - 绘制数据并找到最佳拟合线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71757103/

相关文章:

python - 将 tun0(TUN 接口(interface))与 Scrapy 一起使用

python - 以相同文本字符串开头的列的总和值

Python FFmpeg查询rtsp太慢

python - 使用 pandas 将数据框导出到 python 中的 csv 文件

Python 异常处理 - 避免编写 30+ try except block

python - 检查 Django 中的 OneToOneField 是否为 None

python - 修改列表中的一个对象会修改列表中的所有对象

python多线程等待所有线程完成

python - 有没有办法在 Pandas.groupby 的某一列上同时输出 df.min、df.max 和 df.mean?

python - pyOpenCL 和 2D FFT