Python实现二维曲线拟合的方法


Posted in Python onDecember 29, 2018

如下所示:

from numpy import *
import numpy as np
import matplotlib.pyplot as plt

plt.close()
fig=plt.figure()
plt.grid(True)
plt.axis([0,10,0,8])

#列出数据
point=[[1,2],[2,3],[3,6],[4,7],[6,5],[7,3],[8,2]]
plt.xlabel("X")
plt.ylabel("Y")

#用于求出矩阵中各点的值
XSum = 0.0
X2Sum = 0.0
X3Sum = 0.0
X4Sum = 0.0
ISum = 0.0
YSum = 0.0
XYSum = 0.0
X2YSum = 0.0


#列出各点的位置
for i in range(0,len(point)):

 xi=point[i][0]
 yi=point[i][1]
 plt.scatter(xi,yi,color="red")
 show_point = "("+ str(xi) +","+ str(yi) + ")"
 plt.text(xi,yi,show_point)

 XSum = XSum+xi
 X2Sum = X2Sum+xi**2
 X3Sum = X3Sum + xi**3
 X4Sum = X4Sum + xi**4
 ISum = ISum+1
 YSum = YSum+yi
 XYSum = XYSum+xi*yi
 X2YSum = X2YSum + xi**2*yi

# 进行矩阵运算
# _mat1 设为 mat1 的逆矩阵
m1=[[ISum,XSum, X2Sum],[XSum, X2Sum, X3Sum],[X2Sum, X3Sum, X4Sum]]
mat1 = np.matrix(m1)
m2=[[YSum], [XYSum], [X2YSum]]
mat2 = np.matrix(m2)
_mat1 =mat1.getI()
mat3 = _mat1*mat2

# 用list来提取矩阵数据
m3=mat3.tolist()
a = m3[0][0]
b = m3[1][0]
c = m3[2][0]
# 绘制回归线
x = np.linspace(0,10)
y = a + b*x + c*x**2
plt.plot(x,y)
show_line = "y="+str(a)+"+("+str(b)+"x)"+"+("+str(c)+"x2)";
plt.title(show_line)
plt.show()

以上这篇Python实现二维曲线拟合的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
浅析python 内置字符串处理函数的使用方法
Jun 11 Python
Python中关于使用模块的基础知识
May 24 Python
python实现中文分词FMM算法实例
Jul 10 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
Oct 20 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
Apr 23 Python
[原创]Python入门教程1. 基本运算【四则运算、变量、math模块等】
Oct 28 Python
[机器视觉]使用python自动识别验证码详解
May 16 Python
pytorch动态网络以及权重共享实例
Jan 06 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
Feb 17 Python
解决python虚拟环境切换无效的问题
Apr 30 Python
Python3使用 GitLab API 进行批量合并分支
Oct 15 Python
PYTHON使用Matplotlib去实现各种条形图的绘制
Mar 22 Python
python修改txt文件中的某一项方法
Dec 29 #Python
神经网络相关之基础概念的讲解
Dec 29 #Python
Python实现的KMeans聚类算法实例分析
Dec 29 #Python
Python使用pyshp库读取shapefile信息的方法
Dec 29 #Python
Python实现的线性回归算法示例【附csv文件下载】
Dec 29 #Python
Python 确定多项式拟合/回归的阶数实例
Dec 29 #Python
Python 普通最小二乘法(OLS)进行多项式拟合的方法
Dec 29 #Python
You might like
php中目录,文件操作详谈
2007/03/19 PHP
php数组函数序列之in_array() 查找数组值是否存在
2011/10/29 PHP
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
php中通过curl检测页面是否被百度收录
2013/09/27 PHP
php mysql_real_escape_string函数用法与实例教程
2013/09/30 PHP
laravel框架实现去掉URL中index.php的方法
2019/10/12 PHP
在JavaScript中使用inline函数的问题
2007/03/08 Javascript
简短几句jquery代码的实现一个图片向上滚动切换
2011/09/02 Javascript
用nodejs访问ActiveX对象,以操作Access数据库为例。
2011/12/15 NodeJs
js打造数组转json函数
2015/01/14 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
JS实现的简单鼠标跟随DiV层效果完整实例
2015/10/31 Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
2016/05/13 Javascript
Vue2.x中的父组件传递数据至子组件的方法
2017/05/01 Javascript
[js高手之路]设计模式系列课程-发布者,订阅者重构购物车的实例
2017/08/29 Javascript
简单的React SSR服务器渲染实现
2018/12/11 Javascript
Vuex中的State使用介绍
2019/01/19 Javascript
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
2018/01/24 Python
详解python中asyncio模块
2018/03/03 Python
使用Python测试Ping主机IP和某端口是否开放的实例
2019/12/17 Python
django实现模板中的字符串文字和自动转义
2020/03/31 Python
Selenium+BeautifulSoup+json获取Script标签内的json数据
2020/12/07 Python
在css3中background-clip属性与background-origin属性的用法介绍
2012/11/13 HTML / CSS
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
德国珠宝和配件商店:Styleserver
2021/02/23 全球购物
2014年小学元旦活动方案
2014/02/12 职场文书
数学国培研修感言
2014/02/13 职场文书
超市客服工作职责
2014/06/11 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
个人整改措施落实情况汇报
2014/10/29 职场文书
政协常委会议主持词
2015/07/03 职场文书
关于MySQL中的 like操作符详情
2021/11/17 MySQL
cypress测试本地web应用
2022/06/01 Javascript