我想用-a*sin(b*x + c)(或者也可以是-a*sin(2*x))形式的函数来拟合下面所附的数据,a b c作为要确定的值。我使用了scipy.optimize.curve_fit,但它的工作效果不太好(正如您在image中看到的那样)。我该如何改进?在

代码: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)

python正弦函数拟合_用Python拟合正弦数据相关推荐

  1. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  2. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  3. python正弦函数拟合_在Python中拟合正弦数据

    我想将下面附带的数据与-a*sin(b*x + c)(或可能也可以使用-a*sin(2*x))与a b c作为要确定的值的函数拟合.我使用了scipy.optimize.curve_fit,但效果不好 ...

  4. python二元多次函数拟合_对python实现二维函数高次拟合的示例详解

    在参加"数据挖掘"比赛中遇到了关于函数高次拟合的问题,然后就整理了一下源码,以便后期的学习与改进. 在本次"数据挖掘"比赛中感觉收获最大的还是对于神经网络的认识 ...

  5. 使用python预测基金_使用python先知3 1创建预测

    使用python预测基金 This tutorial was created to democratize data science for business users (i.e., minimiz ...

  6. python曲线拟合预测_用python做曲线拟合

    大家好?我是Kepler哎学习,最近在工程中用到曲线拟合.一般我们都是用matlab来做,方便快捷.我们也可以尝试用python编写脚本来拟合数据,方便数据自动化处理. 曲线拟合分为一般多项式拟合和指 ...

  7. 怎样用python自动化办公_会python基础,如何学习自动化办公?

    Python 自动化,爽爽的解决 本课程完全让你摒弃重复率高,机械操作的劳动,解放双手,自动化办公,比如Excel表的各种计算,合并,比对,尤其是跨表,大量数据的,连Excel打开都费劲的,Pytho ...

  8. python集群_使用Python集群文档

    python集群 Natural Language Processing has made huge advancements in the last years. Currently, variou ...

  9. python对象引用计数器_在Python中借助计数器对象对项目进行计数

    python对象引用计数器 前提 (The Premise) When we deal with data containers, such as tuples and lists, in Pytho ...

  10. python 网页编程_通过Python编程检索网页

    python 网页编程 The internet and the World Wide Web (WWW), is probably the most prominent source of info ...

最新文章

  1. phpmyadmin另类拿shell
  2. 多线程——实现Callable接口
  3. HZOJ string
  4. 向256 MB内存的Windows Phone提供应用的最佳实践指导
  5. 支持C# 5.0的async语法的反编译器出来了
  6. 记录docker开发hadoop,解决bug Datanode denied communication with namenode because hostname cannot be
  7. gmat阅读.html,GMAT阅读方法之——抽象词提炼
  8. Ubuntu中的截图工具
  9. 为什么要在信号线上串联一些小电阻
  10. Tesla M40 24G 在Win11上的双显卡显示实现、改风冷
  11. TCP/IP协议(2):各层网络设备
  12. ARIMA时间序列分析——(一)数据平稳性检验
  13. ES 根据查询条件求和sum
  14. 光纤熔接操作步骤——详细图文光纤熔接教程
  15. 【ESP系列】ESP8266-12F
  16. UNICODE汉字数据库
  17. HTTP 提交方式有哪些
  18. 快手2020校园招聘秋招笔试--工程A试卷 (编程题题解全)
  19. java sql编写教务系统_校园车辆管理系统的设计与实现 java+SqlServer
  20. 推荐一款基于 SpringBoot + Vue 的智能停车场管理系统

热门文章

  1. Android App想适配华为 HarmonyOS,难吗?
  2. 响应时间(RT)、吞吐量(TPS)、QPS、并发数概念
  3. [Caffe]:关于caffe新手入门
  4. 初识hadoop 读hadoop权威指南
  5. 深圳盛世光影传媒之影视后期流程详解
  6. python在家怎么赚钱手工艺_在家可做的手工兼职有哪些?宝妈不去公司做什么赚钱?...
  7. vue3中使用$refs
  8. Android自定义View面试总结
  9. vulnhub靶机 trollcave-v1-2
  10. 【深思】魏则西,你为何死揪百度不放——媒体的腐烂与变质!