Вывести уравнение построенной линии подгонки-Фурье

Ive написал код, чтобы нарисовать ряд Фурье fit line на моих рассеянных данных, но я не могу думать, как напечатать уравнение линии,
для моей квадратичной подгонки, когда solivng

phi = [ones(NN,1),datax1T,datax1T.^2,datax1T.^3];

я бы использовал

s=sprintf('y=%8f+%8fx+%8fx^2+%8fx^3',aa(1),aa(2),aa(3),aa(4));

вот мой код для моей линии Фурье fit

load('fitdata.mat', 'datax1', 'datay1'); format long

datax1T =(datax1)'; %transpose of the data
datay1T =(datay1)';
k=1;

%Calculate number of data points
NN = length(datax1T);
%Calculate Design Matrix
phi = [ones(NN,1),sin(k*datax1T), cos(k*datax1T), sin(2*k*datax1T), cos(2*k*datax1T)];
%Solve System equations
aa= phidatay1T;
%Calculate fitted values of y
yfit = phi*aa;
%Plot the output
plot(datax1T, datay1T, 'ro', datax1T, yfit, 'k-');

%Tidy up graph
s=sprintf('y=?????',aa(1),aa(2),aa(3)??); %what to put here?
legend('data',s,,'Location','southeast');
title ('Fourrier Fit Function','FontSize', 20) 
xlabel('x data'); ylabel('y data');

1 ответ

  1. Как насчет использования ‘text’?

    sprintf(X,Y, ['y=',aa(1),'+',aa(2),'x+',aa(3)','x^2+',aa(4),'x^3']); 
    

    X и Y-координаты места, где вы хотите его распечатать