扣丁学堂Python培训简述Python实现三维拟合的方法

ITxuexi_66 · · 999 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

本篇文章扣丁学堂Python培训小编给小伙伴们分享一下Python实现三维拟合的方法,文中有详细的代码列出供小伙伴们参考,文章具有不错的参考价值,希望对大家有所帮助。 如下所示: from matplotlib import pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) #列出实验数据 point=[[2,3,48],[4,5,50],[5,7,51],[8,9,55],[9,12,56]] plt.xlabel("X1") plt.ylabel("X2") #表示矩阵中的值 ISum = 0.0 X1Sum = 0.0 X2Sum = 0.0 X1_2Sum = 0.0 X1X2Sum = 0.0 X2_2Sum = 0.0 YSum = 0.0 X1YSum = 0.0 X2YSum = 0.0 #在图中显示各点的位置 for i in range(0,len(point)): x1i=point[i][0] x2i=point[i][1] yi=point[i][2] ax.scatter(x1i, x2i, yi, color="red") show_point = "["+ str(x1i) +","+ str(x2i)+","+str(yi) + "]" ax.text(x1i,x2i,yi,show_point) ISum = ISum+1 X1Sum = X1Sum+x1i X2Sum = X2Sum+x2i X1_2Sum = X1_2Sum+x1i**2 X1X2Sum = X1X2Sum+x1i*x2i X2_2Sum = X2_2Sum+x2i**2 YSum = YSum+yi X1YSum = X1YSum+x1i*yi X2YSum = X2YSum+x2i*yi # 进行矩阵运算 # _mat1 设为 mat1 的逆矩阵 m1=[[ISum,X1Sum,X2Sum],[X1Sum,X1_2Sum,X1X2Sum],[X2Sum,X1X2Sum,X2_2Sum]] mat1 = np.matrix(m1) m2=[[YSum],[X1YSum],[X2YSum]] mat2 = np.matrix(m2) _mat1 =mat1.getI() mat3 = _mat1*mat2 # 用list来提取矩阵数据 m3=mat3.tolist() a0 = m3[0][0] a1 = m3[1][0] a2 = m3[2][0] # 绘制回归线 x1 = np.linspace(0,9) x2 = np.linspace(0,12) y = a0+a1*x1+a2*x2 ax.plot(x1,x2,y) show_line = "y="+str(a0)+"+"+str(a1)+"x1"+"+"+str(a2)+"x2" plt.title(show_line) plt.show() 想要了解更多关于Python和人工智能方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

999 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传