matlab 拟合光滑曲线图,Matlab光滑曲线多项式拟合与样条曲线拟合的两个案例

%多项式曲线拟合

figure(1)

matrix2=[]; %新建空矩阵

h1=polyfit(matrix1(:,1),matrix1(:,2),3); %计算多项式拟合系数,3-拟合次数

matrix2(:,1)=polyval(h1,matrix1(:,1),1); %计算拟合函数值y

plot(matrix1(:,1),matrix2(:,1)) %绘制拟合曲线

title(‘Predicred realations between noncoaxiality and bedding angle’); %标题

set(gca,‘FontName’,‘Time New Roman’,‘fontsize’,12) %字体

%legend(’\rho-\theta’) %图例

xlabel(‘Bedding angle \theta[^\o]’) %x坐标名称

ylabel(‘Angle of noncoaxiality \rho[^\o]’) %y坐标名称

xlim([0,90]) %限制x坐标绘图范围

ylim([0,5]) %限制y坐标绘图范围

set(gca,‘XTick’,(0:10:90)) %设置x坐标间隔

set(gca,‘YTick’,(0:1:5)) %设置y坐标间隔

%样条曲线拟合

figure(2)

values = spcrv([[matrix1(1,1)’ matrix1(:,1)’ matrix1(end,1)’]; [matrix1(1,2)’ matrix1(:,2)’ matrix1(end,2)’]],3); %三次样条曲线拟合

plot(values(1,:),values(2,:), ‘b’); %绘制曲线

title(‘Predicred realations between noncoaxiality and bedding angle’);

set(gca,‘FontName’,‘Time New Roman’,‘fontsize’,12)

xlabel(‘Bedding angle \theta[^\o]’)

ylabel(‘Angle of noncoaxiality \rho[^\o]’)

xlim([0,90])

ylim([0,5])

set(gca,‘XTick’,(0:10:90))

set(gca,‘YTick’,(0:1:5))

原文链接:https://blog.csdn.net/dosper19/article/details/108537127

你可能感兴趣的:(matlab,拟合光滑曲线图)