calculate slope from linear fit data
167 views (last 30 days)
Show older comments
I have this code to linear fit data
x = 1:10;
y1 = [1 5 7 8 9 15 16 12 18 20];
scatter(x,y1,'b','*')
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;
plot(x,yfit,'r-.')
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?
0 Comments
Accepted Answer
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.
0 Comments
More Answers (1)
See Also
Categories
Find more on Fit Postprocessing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!