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 相关文章推荐
windows 10下安装搭建django1.10.3和Apache2.4的方法
Apr 05 Python
Python数据类型中的“冒号“[::]——分片与步长操作示例
Jan 24 Python
Python判断中文字符串是否相等的实例
Jul 06 Python
Python3.7中安装openCV库的方法
Jul 11 Python
浅谈Pycharm调用同级目录下的py脚本bug
Dec 03 Python
bluepy 一款python封装的BLE利器简单介绍
Jun 25 Python
Python实现蒙特卡洛算法小实验过程详解
Jul 12 Python
python 调试冷知识(小结)
Nov 11 Python
浅谈Tensorflow 动态双向RNN的输出问题
Jan 20 Python
如何使用python切换hosts文件
Apr 29 Python
详解Selenium 元素定位和WebDriver常用方法
Dec 04 Python
Python 数据结构之十大经典排序算法一文通关
Oct 16 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
APMServ使用说明
2006/10/23 PHP
PHP根据IP判断地区名信息的示例代码
2014/03/03 PHP
thinkPHP基于ajax实现的菜单与分页示例
2016/07/12 PHP
php和asp语法上的区别总结
2019/05/12 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
2019/10/21 PHP
图片之间的切换
2006/06/26 Javascript
IE网页js语法错误2行字符1、FF中正常的解决方法
2013/09/09 Javascript
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
2013/10/11 Javascript
javascript中数组array及string的方法总结
2014/11/28 Javascript
jQuery Mobile开发中日期插件Mobiscroll使用说明
2016/03/02 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
纯jQuery实现前端分页功能
2017/03/23 jQuery
详解webpack 如何集成第三方js库
2017/06/29 Javascript
node.js中http模块和url模块的简单介绍
2017/10/06 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
使用proxy实现一个更优雅的vue【推荐】
2018/06/19 Javascript
vue-cli3+typescript初体验小结
2019/02/28 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
2019/09/10 Javascript
layui实现图片虚拟路径上传,预览和删除的例子
2019/09/25 Javascript
element-ui如何防止重复提交的方法步骤
2019/12/09 Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
2020/02/19 Javascript
JS自定义滚动条效果
2020/03/13 Javascript
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
详解Python的Django框架中inclusion_tag的使用
2015/07/21 Python
python或C++读取指定文件夹下的所有图片
2019/08/31 Python
Python实现将蓝底照片转化为白底照片功能完整实例
2019/12/13 Python
Python读取yaml文件的详细教程
2020/07/21 Python
RentCars.com巴西:汽车租赁网站
2016/08/22 全球购物
英国比较机场停车场网站:Airport Parking Essentials
2019/12/01 全球购物
销售员自我评价怎么写
2013/09/19 职场文书
上学迟到的检讨书
2014/01/11 职场文书
生日礼品店创业计划书范文
2014/03/21 职场文书
幼儿园清明节活动总结
2014/07/04 职场文书
乡镇干部个人对照检查材料(群众路线)
2014/09/26 职场文书
通过T-SQL语句创建游标与实现数据库加解密功能
2022/03/16 SQL Server