calculate slope from linear fit data
조회 수: 155 (최근 30일)
이전 댓글 표시
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
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/193599/image.png)
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
채택된 답변
Ameer Hamza
2018년 8월 11일
편집: Ameer Hamza
2018년 8월 11일
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
추가 답변 (1개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Legend에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!