Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-05-25
年龄: 41
帖子: 5
声望力: 0 ![]() |
![]()
利用函数建立二次函数图,本人写的函数:
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]; 可是出不了函数图,我觉得我的函数有问题,可我也找不出来,请高手帮助。 ![]() ![]() |
![]() |
![]() |
![]() |
#2 |
普通会员
注册日期: 2009-02-22
帖子: 91
声望力: 18 ![]() |
![]()
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为正整数!!! |
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2009-05-25
年龄: 41
帖子: 5
声望力: 0 ![]() |
![]()
可是我按照你的方法做了啊 没有函数图显示 什么结果也没有
|
![]() |
![]() |
![]() |
#4 |
普通会员
注册日期: 2009-02-22
帖子: 91
声望力: 18 ![]() |
![]()
上面只是通过拟合得到一个多项式,所以没有函数图。想要画图可以给出再给出一些数据从而得到对应的拟合后的函数值,然后画图。如下:
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('拟合前','拟合后图像') |
![]() |
![]() |
![]() |
#5 |
初级会员
注册日期: 2009-05-25
年龄: 41
帖子: 5
声望力: 0 ![]() |
![]()
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);这些都是计算出的,还是举例的呢? |
![]() |
![]() |