python正弦函数拟合_在Python中拟合正弦数据
我想将下面附带的数据与-a*sin(b*x + c)(或可能也可以使用-a*sin(2*x))与a b c作为要确定的值的函数拟合。我使用了scipy.optimize.curve_fit,但效果不好(如您在image中看到的那样)。我该如何改进?在Python中拟合正弦数据
代码:
import numpy as np
import matplotlib.pylab as plt
data = open('pruebaData.dat', 'r')
lines = data.readlines()[1:]
x = []
y = []
for line in lines:
pos = line.split()
if pos != []:
x.append(float(pos[0]))
y.append(float(pos[1]))
z = []
for k in range(len(x)):
z.append(np.deg2rad(x[k]))
valX = np.asarray(z)
valY = np.asarray(y)
from scipy.optimize import curve_fit
def fitFunc(X,a,b,c):
return (- a*np.sin(b*X + c))
fig = plt.figure(2, figsize = (10,8))
init_vals = [1,1,1]
best_vals, covar = curve_fit(fitFunc, valX, valY, p0=init_vals, maxfev = 15000)
line1 = plt.plot(x, y, 'o', color = 'k', ms = 6)
fig2 = plt.plot(x,fitFunc(valX,best_vals[0],best_vals[1], best_vals[2]), '-
', color = 'k', lw = 1)
print('PARAMETERS:',best_vals)
plt.ylabel(r'DATA Y',fontsize=30)
plt.xlabel(r'DATA X',fontsize=30)
plt.xlim(min(x),max(x))
locs,labels = plt.xticks()
plt.xticks(locs, fontsize = 20)
locs,labels = plt.yticks()
plt.yticks(locs, fontsize = 20)
plt.savefig('prueba.png', dpi = 500)
2017-07-19
JCPP
+0
拟合周期性函数总是很棘手。更改频率“b”的初始值以更好地匹配预期频率。 –
+0
您的数据看起来不像一个正弦曲线。也许两个高斯的叠加会更好。或者,如果你知道你的数据应该是正弦曲线 - 那么你的实验是不好的。 –
+0
你能修好你的缩进吗? –
python正弦函数拟合_在Python中拟合正弦数据相关推荐
- python音频 降噪_从视频中提取音频数据,然后应用傅里叶对音频降噪(python)...
视频准备 QQ有热键 然后随便打开一个视频网站进行录屏 我选择B站 从视频中提取音频 需要安装包moviepy pip install moviepy 提取代码 from moviepy.editor ...
- python中立方表示_在Python中表示一个对象的方法
在 Python 中一切都是对象.如果要在 Python 中表示一个对象,除了定义 class 外还有哪些方式呢?我们今天就来盘点一下. 0x00 dict 字典或映射存储 KV 键值对,它对查找.插 ...
- python 时间序列预测_使用Python进行动手时间序列预测
python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...
- python 概率分布模型_使用python的概率模型进行公司估值
python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...
- python筛选excel某一列中相同的数据
求赞----求关注 python筛选excel某一列中相同的数据 1.需要cmd下载 pip install pandas 的模板 2.注意文件的路径问题不要出错 3.还有文件的编码格式 ----- ...
- python对象引用计数器_在Python中借助计数器对象对项目进行计数
python对象引用计数器 前提 (The Premise) When we deal with data containers, such as tuples and lists, in Pytho ...
- python打印星图_在python中探索地图与星图
python打印星图 地图(map) "map(function, iterable, ...) " map(function, iterable, ...) Return an ...
- python创建列向量_关于Numpy中的行向量和列向量详解
关于Numpy中的行向量和列向量详解 行向量 方式1 import numpy as np b=np.array([1,2,3]).reshape((1,-1)) print(b,b.shape) 结 ...
- python selenium 下拉列表_从下拉列表中选择python selenium选项
我试图使用下面的代码使用selenium(python)从网页上的下拉列表中选择一个选项.在from selenium import webdriver from selenium.webdriver ...
最新文章
- Android 中自定义控件和属性(attr.xml,declare-styleable,TypedArray)的方法和使用
- 关于java调用Dll文件的异常 %1 不是有效的 Win32 应用程序。
- private、protected、public、published 访问限制(或者叫类成员的可见性)
- c语言vi运行编译文件,VC++6.0中如何编译运行及调试C语言程序文件.docx
- LeetCode - Majority Element
- PHP中的正则表达式函数preg_
- js元素事件的绑定与解绑,绑定事件的区别
- 辐射3计算机,辐射3与道德
- Java数据结构与算法解析(一)——表
- 服务零售全场景,苏宁机器人“分身有术”
- python中文乱码如何处理、如何处理跨域_解决Python发送Http请求时,中文乱码的问题...
- ubuntu18.04智能拼音候选字体调节方法
- swift 下标 subscript
- DAY7(DAY8拓展):Python基础及内置库介绍与使用(含例题)
- 总结一下强化学习在工业界应用,给大家扩展一下思路(简易科普)
- 使用validate注解做校验以及自定义validate注解
- mysql 日程设计_客服-电销日程表 - 数据库设计 - 数据库表结构 - 果创云
- VL53L0X 底层思路整理(1)
- netlogon启动后停止_【漏洞通报】微软NetLogon提权漏洞
- 戴尔se2717h 怎么拆支架
热门文章
- 韩国的排骨有多贵?(关于韩剧的暴笑讨论)
- 浙江卫视(高清)在线直播-PPS直播
- nodejs中module.exports和exports的区别
- CCD/CMOS传感器基本定义与镜头转换系数计算
- SAP 电商云 Assisted Service Module (ASM) 功能模块讲解
- 拨开抑郁的阴霾,奏响心灵的乐章——抑郁症的治疗目标
- 如何优化一款企业级 即时通讯工具? 从需求分析到原型文档
- saturate_cast
- ROS teb_local_planner使用
- PHP在中国的发展现状及就业前景解析