时间:2021-05-22
如下所示:
from numpy import *import numpy as npimport matplotlib.pyplot as pltplt.close()fig=plt.figure()plt.grid(True)plt.axis([0,10,0,8])#列出数据point=[[1,2],[2,3],[3,6],[4,7],[6,5],[7,3],[8,2]]plt.xlabel("X")plt.ylabel("Y")#用于求出矩阵中各点的值XSum = 0.0X2Sum = 0.0X3Sum = 0.0X4Sum = 0.0ISum = 0.0YSum = 0.0XYSum = 0.0X2YSum = 0.0#列出各点的位置for i in range(0,len(point)): xi=point[i][0] yi=point[i][1] plt.scatter(xi,yi,color="red") show_point = "("+ str(xi) +","+ str(yi) + ")" plt.text(xi,yi,show_point) XSum = XSum+xi X2Sum = X2Sum+xi**2 X3Sum = X3Sum + xi**3 X4Sum = X4Sum + xi**4 ISum = ISum+1 YSum = YSum+yi XYSum = XYSum+xi*yi X2YSum = X2YSum + xi**2*yi# 进行矩阵运算# _mat1 设为 mat1 的逆矩阵m1=[[ISum,XSum, X2Sum],[XSum, X2Sum, X3Sum],[X2Sum, X3Sum, X4Sum]]mat1 = np.matrix(m1)m2=[[YSum], [XYSum], [X2YSum]]mat2 = np.matrix(m2)_mat1 =mat1.getI()mat3 = _mat1*mat2# 用list来提取矩阵数据m3=mat3.tolist()a = m3[0][0]b = m3[1][0]c = m3[2][0]# 绘制回归线x = np.linspace(0,10)y = a + b*x + c*x**2plt.plot(x,y)show_line = "y="+str(a)+"+("+str(b)+"x)"+"+("+str(c)+"x2)";plt.title(show_line)plt.show()以上这篇Python实现二维曲线拟合的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Python实现曲线拟合操作。分享给大家供大家参考,具体如下:这两天学习了用python来拟合曲线。一、环境配置本人比较比较懒,所以下载的全部是e
本文实例讲述了Python基于最小二乘法实现曲线拟合。分享给大家供大家参考,具体如下:这里不手动实现最小二乘,调用scipy库中实现好的相关优化函数。考虑如下的
本文实例为大家分享了Python曲线拟合的最小二乘法,供大家参考,具体内容如下模块导入importnumpyasnpimportgaosiasgs代码"""本函
本文实例讲述了Java实现求解一元n次多项式的方法。分享给大家供大家参考,具体如下:项目需要做趋势预测,采用线性拟合、2阶曲线拟合和指数拟合的算法,各种线性拟合
上一篇文章我们介绍了ApacheCommonsMath3学习之数值积分实例代码,这里给大家分享math3多项式曲线拟合的相关内容,具体如下。多项式曲线拟合:or