How to make the line of best fit go through the origin?

16 visualizzazioni (ultimi 30 giorni)
Effectivenormalstress=[41,79,119,159,197,80];
Maximumshearstress=[34,73,97,138,173,56];
x=Effectivenormalstress;
y=Maximumshearstress;
scatter(x, y, 'rx');
xlabel('Effective normal stress');
ylabel('Shear stress');
sgtitle('Interpretation for angles of shearing resistance');
coefficients=polyfit(x, y, 1);
xFit=linspace(min(x),max(x),1000);
yFit=polyval(coefficients, xFit);
hold on;
plot(xFit,yFit,'b-' , 'LineWidth',1);
grid on;

Risposta accettata

David Goodmanson
David Goodmanson il 23 Apr 2020
Modificato: David Goodmanson il 23 Apr 2020
Hello Ash,
Effectivenormalstress=[41,79,119,159,197,80]'; % make these into column vectors
Maximumshearstress=[34,73,97,138,173,56]';
x=Effectivenormalstress;
y=Maximumshearstress;
c = x\y
xplot = 1:200;
plot(xplot,c*xplot,x,y,'o');grid on
The idea is to fit the linear relation x*c = y in the least squares sense where x and y are column vectors.
  1 Commento
Mohd Aaquib Khan
Mohd Aaquib Khan il 13 Set 2023
Hi David, this is very useful, thanks.
Also how can I find the goodness of fit in this fit? R value or any other goodness of fit parameter!

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by