怎么用matlab 画出以下图?
1个回答

使用polyfit函数求出拟合的多项式系数,再用polyval函数求出拟合后的y值。具体程序如下:clear all

close all

x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

y=[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2]

xx = 1:0.01:10;

%一次拟合

p1=polyfit(x,y,1);

f1 = polyval(p1,xx);

%三次拟合

p3 = polyfit(x,y,3);

f3 = polyval(p3,xx);

%画图

figure

plot(x,y,'b*')

hold on

plot(xx,f1,'g:')

plot(xx,f3,'r')

legend('real','first fit','third fit')

结果如下: