python实现三维拟合的方法


Posted in Python onDecember 29, 2018

如下所示:

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 相关文章推荐
Python聚类算法之凝聚层次聚类实例分析
Nov 20 Python
python制作爬虫并将抓取结果保存到excel中
Apr 06 Python
详解tensorflow实现迁移学习实例
Feb 10 Python
python使用xslt提取网页数据的方法
Feb 23 Python
Python实现的求解最大公约数算法示例
May 03 Python
JSON文件及Python对JSON文件的读写操作
Oct 07 Python
在Python中给Nan值更改为0的方法
Oct 30 Python
python生成每日报表数据(Excel)并邮件发送的实例
Feb 03 Python
python图形开发GUI库pyqt5的基本使用方法详解
Feb 14 Python
基于TensorBoard中graph模块图结构分析
Feb 15 Python
超详细Python解释器新手安装教程
May 10 Python
Python Matplotlib库实现画局部图
Nov 17 Python
Django数据库连接丢失问题的解决方法
Dec 29 #Python
Python Cookie 读取和保存方法
Dec 28 #Python
Python编程flask使用页面模版的方法
Dec 28 #Python
Python编程中flask的简介与简单使用
Dec 28 #Python
Python3 Post登录并且保存cookie登录其他页面的方法
Dec 28 #Python
Python3 使用cookiejar管理cookie的方法
Dec 28 #Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 #Python
You might like
PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
2009/03/10 PHP
跟我学Laravel之请求(Request)的生命周期
2014/10/15 PHP
简单解决新浪SAE无法上传文件的问题
2015/05/13 PHP
浅析PHP开发规范
2018/02/05 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
javascript中的delete使用详解
2013/04/11 Javascript
JavaScript中的this关键字使用方法总结
2015/03/13 Javascript
介绍JavaScript中Math.abs()方法的使用
2015/06/14 Javascript
javascript设计模式之对象工厂函数与构造函数详解
2015/07/30 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
用AngularJS的指令实现tabs切换效果
2016/08/31 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
微信小程序实战之顶部导航栏(选项卡)(1)
2020/06/19 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
Vuex的初探与实战小结
2018/11/26 Javascript
vue实现路由监听和参数监听
2019/10/29 Javascript
JS使用for in有序获取对象数据
2020/05/19 Javascript
jQuery实现移动端笔触canvas电子签名
2020/05/21 jQuery
[40:19]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第二场 12.18
2020/12/19 DOTA
Python threading多线程编程实例
2014/09/18 Python
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
python下如何查询CS反恐精英的服务器信息
2017/01/17 Python
python 查找文件名包含指定字符串的方法
2018/06/05 Python
详解python中list的使用
2019/03/15 Python
django中的图片验证码功能
2019/09/18 Python
Python OpenCV视频截取并保存实现代码
2019/11/30 Python
Python进行统计建模
2020/08/10 Python
python 实现围棋游戏(纯tkinter gui)
2020/11/13 Python
PyCharm最新激活码PyCharm2020.2.3有效
2020/11/18 Python
Python导入父文件夹中模块并读取当前文件夹内的资源
2020/11/19 Python
英国家喻户晓的高街品牌:River Island
2017/11/28 全球购物
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
文秘专业个人求职信
2013/12/22 职场文书
2014年信息技术工作总结
2014/12/16 职场文书
党支部意见范文
2015/06/02 职场文书
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android