matlab曲线拟合怎么写

我需要matlab拟合一些数据图像,但是我不知道怎么写,求大神帮忙啊。数据为:(26.3,8.85)(33.5,8.17)(39.1,7.49)(43.1,7.16)(4... 我需要matlab拟合一些数据图像,但是我不知道怎么写,求大神帮忙啊。
数据为:(26.3,8.85)(33.5,8.17)(39.1,7.49)(43.1,7.16)(47.0,6.81)(50.0,6.58)(54.5,6.21)(56.8,5.91)(64.9,5.48)(72.0,5.11)(77.0,5.98)
求大神帮个忙啊
展开
 我来答
百度网友7c6f8ba
2017-04-11 · TA获得超过1033个赞
知道小有建树答主
回答量:604
采纳率:0%
帮助的人:308万
展开全部
x=[26.3 33.5 39.1 43.1 47.0 50.0 54.5 56.8 64.9 72.0 77.0];
y=[8.85 8.17 7.49 7.16 6.81 6.58 6.21 5.91 5.48 5.11 5.98];
%多项式拟合
n=1;
A=polyfit(x,y,n); %n是给定的多项式的次数,拟合出来的结果A是系数向量
y1=polyval(A,x); %计算出拟合的y值
plot(x,y,'k*',x,y1,'r-'); %画出数据对比图,黑点是原始数据,红线是拟合曲线

%指定函数拟合
f=fittype('a*e^(b*x)+c'); %引号里的是你的函数模型,默认是以x为自变量,其余为待定参数
fity=fit(x,y,f) %曲线拟合,会给出拟合结果
%再根据给出的结果计算出新的y值,画图神马的
更多追问追答
追问

我按照你的内容输入进去了,可是感觉没有拟合呀,另最后一个数据是4.98打成5.98了,老师说应该是个凹函数

追答
我只是用直线举了个例子,它具体是什么函数是靠你观察出来的或者是通过推理得出的模型,再用拟合求出对应的待定系数,曲线拟合的目的可能是通过现有数据得出函数模型,也可能是用数据来验证已知模型。
如果模型是未知的,在本例中,所有的点都在直线上下,并没有太大的偏差,可以认为直线是较好的模型。你还可以试试二次函数、三次函数、指数函数等等~找出你认为最好的模型。

评价模型可以用残差平方和,自己百度去吧。不过这个有局限性,对于多项式肯定是次数越高,残差平方和越小,次数比点数小1时,残差为0,但是这样的模型没有意义的,同样的实验,做第二次就可能就不符合了。
并不是所有的点都在曲线上就是最好的,数据本身还可能存在误差。
陌沫义
2018-03-30 · TA获得超过1442个赞
知道小有建树答主
回答量:9
采纳率:100%
帮助的人:1454
展开全部

n=1;
A=polyfit(x,y,n); %n给定项式数拟合结A系数向量
y1=polyval(A,x); %计算拟合y值
plot(x,y,'k*',x,y1,'r-'); %画数据比图黑点原始数据红线拟合曲线

%指定函数拟合
f=fittype('a*e^(b*x)+c'); %引号函数模型默认x自变量其余待定参数
fity=fit(x,y,f) %曲线拟合给拟合结
%再根据给结计算新y值画图神马

在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以我们需要用到matlab曲线拟合函数,并且以最常用的多项式拟合函数为例作为matlab曲线拟合例子,

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
marinejiang
2013-09-29
知道答主
回答量:36
采纳率:0%
帮助的人:19.7万
展开全部
一楼说的很详细,如果你不想调用现成函数想自己写咨询我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式