how to make linear fit

14 次查看(过去 30 天)
Hi;
How to make a plot similar to the attached figure ??

采纳的回答

William Rose
William Rose 2023-10-22
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 个评论
William Rose
William Rose 2023-10-22
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

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with Curve Fitting Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by