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 Mysql数据库操作 Perl操作Mysql数据库
Jan 12 Python
python通过smpt发送邮件的方法
Apr 30 Python
python图像处理之镜像实现方法
May 30 Python
python实现获取Ip归属地等信息
Aug 27 Python
python中abs&map&reduce简介
Feb 20 Python
详解python校验SQL脚本命名规则
Mar 22 Python
零基础使用Python读写处理Excel表格的方法
May 02 Python
详解python播放音频的三种方法
Sep 23 Python
解决pycharm同一目录下无法import其他文件
Feb 12 Python
Python实现企业微信机器人每天定时发消息实例
Feb 25 Python
python判断一个变量是否已经设置的方法
Aug 13 Python
python实现canny边缘检测
Sep 14 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开发中的错误收集,不定期更新。
2011/02/03 PHP
制作个性化的WordPress登陆界面的实例教程
2016/05/21 PHP
jquery.validate使用攻略 第二部
2010/07/01 Javascript
jquery $.ajax相关用法分享
2012/03/16 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
PHP守护进程实例
2015/03/06 Javascript
JavaScript中split() 使用方法汇总
2015/04/17 Javascript
jquery实现的树形目录实例
2015/06/26 Javascript
BootStrap的JS插件之轮播效果案例详解
2016/05/16 Javascript
再谈Javascript中的基本类型和引用类型(推荐)
2016/07/01 Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
2016/10/09 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
vue 使用ref 让父组件调用子组件的方法
2018/02/08 Javascript
在 React、Vue项目中使用SVG的方法
2018/02/09 Javascript
Angular实现模版驱动表单的自定义校验功能(密码确认为例)
2018/05/17 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
layui 富文本编辑器和textarea值的相互传递方法
2019/09/18 Javascript
js实现文字头像的生成代码
2020/03/07 Javascript
[54:08]LGD女子刀塔学院 DOTA2炼金术士教学
2014/01/09 DOTA
python基于mysql实现的简单队列以及跨进程锁实例详解
2014/07/07 Python
python链接Oracle数据库的方法
2015/06/28 Python
基于python的七种经典排序算法(推荐)
2016/12/08 Python
Python实现图片拼接的代码
2018/07/02 Python
react+django清除浏览器缓存的几种方法小结
2019/07/17 Python
django中使用POST方法获取POST数据
2019/08/20 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
opencv 图像轮廓的实现示例
2020/07/08 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
2020/10/20 Python
html5页面结构_动力节点Java学院整理
2017/07/10 HTML / CSS
房地产销售经理岗位职责
2014/01/01 职场文书
一年级家长会邀请函
2014/01/25 职场文书
个人授权委托书范本
2014/09/14 职场文书
企业法人授权委托书范本
2014/09/23 职场文书
单位接收证明格式
2015/06/18 职场文书
校运会宣传稿大全
2015/07/23 职场文书
变长双向rnn的正确使用姿势教学
2021/05/31 Python