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 相关文章推荐
Centos5.x下升级python到python2.7版本教程
Feb 14 Python
Python实现设置windows桌面壁纸代码分享
Mar 28 Python
python中的随机函数小结
Jan 27 Python
python使用pycharm环境调用opencv库
Feb 11 Python
Pandas 按索引合并数据集的方法
Nov 15 Python
Python 实现还原已撤回的微信消息
Jun 18 Python
网易有道2017内推编程题 洗牌(python)
Jun 19 Python
anaconda如何查看并管理python环境
Jul 05 Python
pow在python中的含义及用法
Jul 11 Python
django的聚合函数和aggregate、annotate方法使用详解
Jul 23 Python
python安装及变量名介绍详解
Dec 12 Python
Python中的tkinter库简单案例详解
Jan 22 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中call_user_func_array()函数的用法演示
2012/02/05 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
2014/07/08 PHP
php使用fsockopen函数发送post,get请求获取网页内容的方法
2014/11/15 PHP
php集成环境xampp中apache无法启动问题解决方案
2014/11/18 PHP
PHP简单实现HTTP和HTTPS跨域共享session解决办法
2015/05/27 PHP
yii2.0框架场景的简单使用示例
2020/01/25 PHP
javascript中"/"运算符常见错误
2010/10/13 Javascript
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
jQuery学习笔记之jQuery构建函数的7种方法
2014/06/03 Javascript
jquery实现拖动效果
2016/08/10 Javascript
初探nodeJS
2017/01/24 NodeJs
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
基于Bootstrap下拉框插件bootstrap-select使用方法详解
2018/08/07 Javascript
JavaScript作用域、闭包、对象与原型链概念及用法实例总结
2018/08/20 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
浅谈JS中this在各个场景下的指向
2019/08/14 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
2020/11/05 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
Windows下用py2exe将Python程序打包成exe程序的教程
2015/04/08 Python
python获得文件创建时间和修改时间的方法
2015/06/30 Python
python多线程之事件Event的使用详解
2018/04/27 Python
linux环境下Django的安装配置详解
2019/07/22 Python
使用CSS3创建动态菜单效果
2015/07/10 HTML / CSS
GNC健安喜官方海外旗舰店:美国著名保健品牌
2017/01/04 全球购物
李维斯牛仔裤荷兰官方网站:Levi’s NL
2020/08/23 全球购物
男方父母证婚词
2014/01/12 职场文书
妈妈的账单教学反思
2014/02/06 职场文书
2014年妇产科工作总结
2014/12/08 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
年会邀请函的格式及范文五篇
2019/11/02 职场文书
Python自动化之批量处理工作簿和工作表
2021/06/03 Python
阿里云ECS云服务器快照的概念以及如何使用
2022/04/21 Servers
MYSQL常用函数介绍
2022/05/05 MySQL