MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB数学相关] 求助,请高手找错误。 (https://www.labfans.com/bbs/showthread.php?t=8607)

103050 2009-05-25 12:30

求助,请高手找错误。
 
利用函数建立二次函数图,本人写的函数:
polyfit[x,y,n];
x=[12,14,16,18];
y=[132.291,113.019,90.259,70.757];
n=[a*x^2+b*x+c];
可是出不了函数图,我觉得我的函数有问题,可我也找不出来,请高手帮助。:confused::confused:

TTT_IOU 2009-05-25 13:09

回复: 求助,请高手找错误。
 
p = polyfit(x,y,n) finds the coefficients of a polynomial p(x) of degree n that fits the data, p(x(i)) to y(i), in a least squares sense.
程序如下:
x=[12,14,16,18];
y=[132.291,113.019,90.259,70.757];
p=polyfit(x,y,2)
y=poly2sym(p)
其中n为正整数!!!

103050 2009-05-25 14:46

回复: 求助,请高手找错误。
 
可是我按照你的方法做了啊 没有函数图显示 什么结果也没有

TTT_IOU 2009-05-25 16:53

回复: 求助,请高手找错误。
 
1 个附件
上面只是通过拟合得到一个多项式,所以没有函数图。想要画图可以给出再给出一些数据从而得到对应的拟合后的函数值,然后画图。如下:
x=[12,14,16,18];
y=[132.291,113.019,90.259,70.757];
p=polyfit(x,y,2)
x1=12:0.5:18;
y1=polyval(p,x1);
plot(x,y,'*b',x1,y1,'-r');
legend('拟合前','拟合后图像')

103050 2009-05-25 17:00

回复: 求助,请高手找错误。
 
x1=12:0.5:18;
y1=polyval(p,x1);
plot(x,y,'*b',x1,y1,'-r');
legend('拟合前','拟合后图像')
以上这些都是什么意思呢?是不是说我提供的数据不够,还要其他数据才行?x1=12:0.5:18;
y1=polyval(p,x1);这些都是计算出的,还是举例的呢?


所有时间均为北京时间。现在的时间是 11:21

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.