对python指数、幂数拟合curve_fit详解


Posted in Python onDecember 29, 2018

1、一次二次多项式拟合

一次二次比较简单,直接使用numpy中的函数即可,polyfit(x, y, degree)。

2、指数幂数拟合curve_fit

使用scipy.optimize 中的curve_fit,幂数拟合例子如下:

from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
import numpy as np
 
def func(x, a, b, c):
 return a * np.exp(-b * x) + c
 
xdata = np.linspace(0, 4, 50)
y = func(xdata, 2.5, 1.3, 0.5)
ydata = y + 0.2 * np.random.normal(size=len(xdata))
plt.plot(xdata,ydata,'b-')
popt, pcov = curve_fit(func, xdata, ydata)
#popt数组中,三个值分别是待求参数a,b,c
y2 = [func(i, popt[0],popt[1],popt[2]) for i in xdata]
plt.plot(xdata,y2,'r--')
print popt

下面是原始数据和拟合曲线:

对python指数、幂数拟合curve_fit详解

下面是指数拟合例子:

def fund(x, a, b):
 return x**a + b
 
xdata = np.linspace(0, 4, 50)
y = fund(xdata, 2.5, 1.3)
ydata = y + 4 * np.random.normal(size=len(xdata))
plt.plot(xdata,ydata,'b-')
popt, pcov = curve_fit(fund, xdata, ydata)
#popt数组中,三个值分别是待求参数a,b,c
y2 = [fund(i, popt[0],popt[1]) for i in xdata]
plt.plot(xdata,y2,'r--')
print popt

下图是原始数据和拟合曲线:

对python指数、幂数拟合curve_fit详解

以上这篇对python指数、幂数拟合curve_fit详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python enumerate遍历数组示例应用
Sep 06 Python
linux环境下安装pyramid和新建项目的步骤
Nov 27 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
Dec 14 Python
Python实现在某个数组中查找一个值的算法示例
Jun 27 Python
Python爬取个人微信朋友信息操作示例
Aug 03 Python
详解python列表生成式和列表生成式器区别
Mar 27 Python
Python实现查找字符串数组最长公共前缀示例
Mar 27 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 Python
pyqt5 QlistView列表显示的实现示例
Mar 24 Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
Nov 05 Python
Python创建简单的神经网络实例讲解
Jan 04 Python
Python之Sklearn使用入门教程
Feb 19 Python
对python实现二维函数高次拟合的示例详解
Dec 29 #Python
pip安装py_zipkin时提示的SSL问题对应
Dec 29 #Python
Python 做曲线拟合和求积分的方法
Dec 29 #Python
python 画三维图像 曲面图和散点图的示例
Dec 29 #Python
python实现三维拟合的方法
Dec 29 #Python
Django数据库连接丢失问题的解决方法
Dec 29 #Python
Python Cookie 读取和保存方法
Dec 28 #Python
You might like
PHP删除非空目录的函数代码小结
2013/02/28 PHP
PHP生成条形图的方法
2014/12/10 PHP
php中使用GD库做验证码
2016/03/31 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
PDO::errorInfo讲解
2019/01/28 PHP
为JS扩展Array.prototype.indexOf引发的问题及解决办法
2015/01/21 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
jquery+php随机生成红包金额数量代码分享
2015/08/27 Javascript
基于JavaScript实现添加到购物车效果附源码下载
2016/08/22 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
JS实现类似百叶窗下拉菜单效果
2016/12/30 Javascript
JavaScript 动态三角函数实例详解
2017/01/08 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
js canvas实现QQ拨打电话特效
2017/05/10 Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
2017/08/16 Javascript
Mongoose中document与object的区别示例详解
2017/09/18 Javascript
AngularJS路由删除#符号解决的办法
2017/09/28 Javascript
JS实现的简单表单验证功能示例
2017/10/13 Javascript
JavaScript Canvas实现验证码
2020/08/02 Javascript
Vue.js 图标选择组件实践详解
2018/12/03 Javascript
JavaScript遍历查找数组中最大值与最小值的方法示例
2019/05/24 Javascript
微信小程序实现左侧滑动导航栏
2020/04/08 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
2020/05/20 Javascript
python通过yield实现数组全排列的方法
2015/03/18 Python
python合并同类型excel表格的方法
2018/04/01 Python
Python实现确认字符串是否包含指定字符串的实例
2018/05/02 Python
Python类装饰器实现方法详解
2018/12/21 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
2019/04/25 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
Tensorflow进行多维矩阵的拆分与拼接实例
2020/02/07 Python
Django-imagekit的使用详解
2020/07/06 Python
日本最大的旅游网站:Rakuten Travel(乐天旅游)
2018/08/02 全球购物
如何使用PHP session
2015/04/21 面试题
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
拓展培训心得体会
2014/01/04 职场文书
事业单位年度考核个人总结
2015/02/12 职场文书