calculate slope from linear fit data

660 views (last 30 days)
Namira on 11 Aug 2018
Answered: Edward Vivanco on 10 Nov 2019
I have this code to linear fit data
x = 1:10;
y1 = [1 5 7 8 9 15 16 12 18 20];
P = polyfit(x,y1,1);
slope = P(1)
intercept = P(2)
yfit = P(1)*x+P(2); % P(1) is the slope and P(2) is the intercept
hold on;
And the figure I got from code is attached here
The intercept from figure should be 2.2. But I get the value from code is 0.5.
I didn't understand why the values are different? The code seems correct to me. Any suggestion from anyone?

Accepted Answer

Ameer Hamza
Ameer Hamza on 11 Aug 2018
Edited: Ameer Hamza on 11 Aug 2018
The intercept is indeed 0.5. Intercept is the value on y-axis when x=0. Whereas you 2.2 is the value when x=1.

More Answers (1)

Edward Vivanco
Edward Vivanco on 10 Nov 2019
Error in 1st line: x = 1:10
Fix: x = 0:10


Community Treasure Hunt

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

Start Hunting!