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中的字典遍历备忘
Jan 17 Python
Python新手入门最容易犯的错误总结
Apr 24 Python
利用Python3分析sitemap.xml并抓取导出全站链接详解
Jul 04 Python
简单实现python数独游戏
Mar 30 Python
Python对List中的元素排序的方法
Apr 01 Python
pycharm: 恢复(reset) 误删文件的方法
Oct 22 Python
Python 窗体(tkinter)按钮 位置实例
Jun 13 Python
django框架模板语言使用方法详解
Jul 18 Python
Django Rest framework认证组件详细用法
Jul 25 Python
python异常处理之try finally不报错的原因
May 18 Python
Keras中 ImageDataGenerator函数的参数用法
Jul 03 Python
Python使用socket_TCP实现小文件下载功能
Oct 09 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框架的理由
2015/09/26 PHP
Yii框架的redis命令使用方法简单示例
2019/10/15 PHP
不能再简单的无闪刷新验证码原理很简单
2007/11/05 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件打包下载
2010/09/15 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
input链接页面、打开新网页等等的具体实现
2013/12/30 Javascript
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
2016/10/10 Javascript
JavaScript实现两个select下拉框选项左移右移
2017/03/09 Javascript
javascript流程控制语句集合
2017/09/18 Javascript
JS声明对象时属性名加引号与不加引号的问题及解决方法
2018/02/16 Javascript
Vue实现本地购物车功能
2018/12/05 Javascript
vue中实现上传文件给后台实例详解
2019/08/22 Javascript
react中Suspense的使用详解
2019/09/01 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
关于layui的下拉搜索框异步加载数据的解决方法
2019/09/28 Javascript
使用Vue.set()方法实现响应式修改数组数据步骤
2019/11/09 Javascript
用C++封装MySQL的API的教程
2015/05/06 Python
Python3实现从文件中读取指定行的方法
2015/05/22 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
Sanic框架配置操作分析
2018/07/17 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
opencv3/C++实现视频背景去除建模(BSM)
2019/12/11 Python
keras自动编码器实现系列之卷积自动编码器操作
2020/07/03 Python
英国皇家邮政海外旗舰店:Royal Mail
2018/02/21 全球购物
zooplus意大利:在线宠物商店
2019/08/07 全球购物
4s店总经理岗位职责
2013/12/31 职场文书
幼儿园小班评语大全
2014/04/17 职场文书
超市理货员岗位职责
2014/07/04 职场文书
毕业设计答辩开场白
2015/05/29 职场文书
php远程请求CURL案例(爬虫、保存登录状态)
2021/04/01 PHP
CSS中Single Div 绘图技巧的实现
2021/06/18 HTML / CSS
Golang获取List列表元素的四种方式
2022/04/20 Golang
配置nginx负载均衡
2022/05/06 Servers