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 相关文章推荐
在Django的模型中添加自定义方法的示例
Jul 21 Python
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
python实现TF-IDF算法解析
Jan 02 Python
python实现决策树、随机森林的简单原理
Mar 26 Python
python爬虫之线程池和进程池功能与用法详解
Aug 02 Python
Python3爬楼梯算法示例
Mar 04 Python
Python文件操作中进行字符串替换的方法(保存到新文件/当前文件)
Jun 28 Python
Django自定义模板过滤器和标签的实现方法
Aug 21 Python
python基于gevent实现并发下载器代码实例
Nov 01 Python
浅谈keras 的抽象后端(from keras import backend as K)
Jun 16 Python
基于Python制作一副扑克牌过程详解
Oct 19 Python
详解Selenium 元素定位和WebDriver常用方法
Dec 04 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语法(1)
2006/10/09 PHP
PHP网站常见安全漏洞,及相应防范措施总结
2021/03/01 PHP
快速保存网页中所有图片的方法
2006/06/23 Javascript
img的onload的另类用法
2008/01/10 Javascript
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
Javascript 汉字字节判断
2009/08/01 Javascript
formValidator3.3的ajaxValidator一些异常分析
2011/07/12 Javascript
javascript生成随机颜色示例代码
2014/05/05 Javascript
jQueryMobile之Helloworld与页面切换的方法
2015/02/04 Javascript
jQuery插件scroll实现无缝滚动效果
2015/04/27 Javascript
js简单时间比较的方法
2016/08/02 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
2016/11/24 Javascript
Vue.js路由vue-router使用方法详解
2017/03/20 Javascript
详解关于Vuex的action传入多个参数的问题
2019/02/22 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
js实现mp3录音通过websocket实时传送+简易波形图效果
2020/06/12 Javascript
vue实现购物车结算功能
2020/06/18 Javascript
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
[02:26]2018DOTA2亚洲邀请赛赛前采访-Newbee篇
2018/04/03 DOTA
Python中的pprint折腾记
2015/01/21 Python
Python编程之string相关操作实例详解
2017/07/22 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
PIP和conda 更换国内安装源的方法步骤
2020/09/21 Python
Python使用struct处理二进制(pack和unpack用法)
2020/11/12 Python
党校自我鉴定范文
2013/10/02 职场文书
好家长事迹材料
2014/01/23 职场文书
关于环保的标语
2014/06/13 职场文书
治安消防安全责任书
2014/07/23 职场文书
生活部的活动方案
2014/08/19 职场文书
小学国旗下的演讲稿
2014/08/28 职场文书
MySQL中的隐藏列的具体查看
2021/09/04 MySQL
JS高级程序设计之class继承重点详解
2022/07/07 Javascript
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技