how to make linear fit

10 visualizzazioni (ultimi 30 giorni)
ahmad Saad
ahmad Saad il 22 Ott 2023
Commentato: William Rose il 22 Ott 2023
Hi;
How to make a plot similar to the attached figure ??

Risposta accettata

William Rose
William Rose il 22 Ott 2023
There are a number of ways you could do it. here is one example:
x=0:100;
y=2*x+20+10*randn(1,101);
p=polyfit(x,y,1);
% Compute fitted values
yfit=polyval(p,x);
% Plot results
plot(x,y,'b.',x,yfit,'-r')
Try it. Good luck.
  1 Commento
William Rose
William Rose il 22 Ott 2023
If you also want the RMSE and Pearson correlation, do the same code as before plus a few lines:
x=0:100;
y=2*x+20+10*randn(1,101);
p=polyfit(x,y,1);
rho=corr(x',y')
rho = 0.9876
% Compute fitted values
yfit=polyval(p,x);
rmse=sqrt(mean((yfit-y).^2))
rmse = 9.0371
% Plot results
plot(x,y,'b.',x,yfit,'-r')
And if you want to add the rho and rmse to the plot, do this:
hold on;
s1=sprintf('RMSE=%.2f',rmse);
text(10,200,s1);
s2=sprintf('rho=%.3f',rho);
text(60,200,s2)
text();
OK

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Earth, Ocean, and Atmospheric Sciences in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by