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 01 Python
Python3基础之基本数据类型概述
Aug 13 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 Python
python 基础教程之Map使用方法
Jan 17 Python
Python实现的求解最大公约数算法示例
May 03 Python
Python登录注册验证功能实现
Jun 18 Python
python实现归并排序算法
Nov 22 Python
Django如何开发简单的查询接口详解
May 17 Python
python中count函数简单的实例讲解
Feb 06 Python
基于python实现操作git过程代码解析
Jul 27 Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Jun 07 Python
浅谈python中的多态
Jun 15 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
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
PHP解码unicode编码的中文字符代码分享
2014/08/13 PHP
thinkphp在模型中自动完成session赋值示例代码
2014/09/09 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
php自动提交表单的方法(基于fsockopen与curl)
2016/05/09 PHP
php车辆违章查询数据示例
2016/10/14 PHP
jquery easyui中treegrid用法的简单实例
2014/02/18 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
JavaScript获取图片像素颜色并转换为box-shadow显示
2016/03/11 Javascript
仅一个form表单 js实现注册信息依次填写提交功能
2016/06/12 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
2016/07/14 Javascript
AngularJS中$http服务常用的应用及参数
2016/08/22 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
详解vue.js全局组件和局部组件
2017/04/10 Javascript
NodeJS链接MySql数据库的操作方法
2017/06/27 NodeJs
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
React中使用UEditor百度富文本的方法
2018/08/22 Javascript
vue中v-for通过动态绑定class实现触发效果
2018/12/06 Javascript
vue指令做滚动加载和监听等
2019/05/26 Javascript
node.js中Buffer缓冲器的原理与使用方法分析
2019/11/23 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
2020/05/15 Javascript
Vue仿Bibibili首页的问题
2021/01/21 Vue.js
[44:51]2018DOTA2亚洲邀请赛 4.4 淘汰赛 VP vs Liquid 第二场
2018/04/05 DOTA
linux系统使用python监控apache服务器进程脚本分享
2014/01/15 Python
详解tensorflow实现迁移学习实例
2018/02/10 Python
浅谈Tensorflow模型的保存与恢复加载
2018/04/26 Python
PyQt5 pyqt多线程操作入门
2018/05/05 Python
python实现滑雪游戏
2020/02/22 Python
Python参数传递机制传值和传引用原理详解
2020/05/22 Python
女士时装鞋:Chinese Laundry
2018/08/29 全球购物
党员服务承诺书
2014/05/28 职场文书
药店促销活动策划方案
2014/08/24 职场文书
大雁塔导游词
2015/02/04 职场文书
教师个人教学总结
2015/02/11 职场文书
天气温馨提示语
2015/07/14 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书