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中3种内建数据结构:列表、元组和字典
Nov 30 Python
django1.8使用表单上传文件的实现方法
Nov 04 Python
老生常谈Python基础之字符编码
Jun 14 Python
django实现登录时候输入密码错误5次锁定用户十分钟
Nov 05 Python
python定向爬虫校园论坛帖子信息
Jul 23 Python
django_orm查询性能优化方法
Aug 20 Python
Python中Proxypool库的安装与配置
Oct 19 Python
对Pandas MultiIndex(多重索引)详解
Nov 16 Python
Python函数返回不定数量的值方法
Jan 22 Python
Python控制Firefox方法总结
Jun 03 Python
Pyqt5 实现跳转界面并关闭当前界面的方法
Jun 19 Python
python计算导数并绘图的实例
Feb 29 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代码包装修正版
2008/03/15 PHP
php压缩多个CSS为一个css的代码并缓存
2011/04/21 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
php中strtotime函数性能分析
2016/11/20 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
2020/04/04 PHP
两个JavaScript jsFiddle JSBin在线调试器
2010/03/14 Javascript
jquery异步循环获取功能实现代码
2010/09/19 Javascript
网易JS面试题与Javascript词法作用域说明
2010/11/09 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
javascript中Date format(js日期格式化)方法小结
2015/12/17 Javascript
JavaScript阻止回车提交表单的方法
2015/12/30 Javascript
微信小程序 action-sheet 反馈上拉菜单简单实例
2017/05/11 Javascript
基于Require.js使用方法(总结)
2017/10/26 Javascript
详解在vue-cli中引用jQuery、bootstrap以及使用sass、less编写css
2017/11/08 jQuery
Vue SSR 组件加载问题
2018/05/02 Javascript
vue-cli 3.0 版本与3.0以下版本在搭建项目时的区别详解
2018/12/11 Javascript
一看就会的vuex实现登录验证(附案例)
2020/01/09 Javascript
js实现时钟定时器
2020/03/26 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
使用Protocol Buffers的C语言拓展提速Python程序的示例
2015/04/16 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
使用django-crontab实现定时任务的示例
2018/02/26 Python
对Python中9种生成新对象的方法总结
2018/05/23 Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
2020/07/14 Python
基于Django集成CAS实现流程详解
2020/11/28 Python
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
葡萄牙鞋子品牌:Fair
2016/12/10 全球购物
美国在线轮胎零售商:SimpleTire
2019/04/08 全球购物
Clos19英国:高档香槟、葡萄酒和烈酒在线购物平台
2020/07/10 全球购物
怎么写有吸引力的自荐信
2013/11/17 职场文书
群众路线党课主持词
2014/04/01 职场文书
个人债务授权委托书
2014/10/17 职场文书
村党支部书记个人对照材料汇报
2014/10/26 职场文书
python单元测试之pytest的使用
2021/06/07 Python