Want to fit linear curve on my data.
이전 댓글 표시
I have x, y data
x=[0;0.100000000000000;0.200000000000000;0.300000000000000;0.400000000000000;0.500000000000000;0.600000000000000];
y=[4.67178152947921e-06;4.67353333624452e-06;4.70560728038426e-06;4.74873086195845e-06;4.77333265701103e-06;4.84630647442201e-06;4.87015810633671e-06];
I want to plot x vs y and want to y-axis in log scale
plot(x,y)
set(gca,'YScale','log')
hold on
Note: x data starts from 0
Now I want to fit a line and show the slope of that curve fitting line + original curve
p=polyfit(x,(y),1);
q=polyval(p,x);
plot(x,q).
It seems to be not right because the fit line isn't straight ( it likes power fit or exponential) . Note log scale ( not log(data))
Please helps. Thanks
댓글 수: 2
the cyclist
2013년 3월 18일
It would be tremendously helpful if you included a small sample of your data that exhibits the problem, so that we could run your code and see the results. Your statement that it "seems to be not right" is not quite enough.
Daniel Shub
2013년 3월 18일
Your x and y are not the same size ...
채택된 답변
추가 답변 (1개)
Jan
2013년 3월 19일
0 개 추천
When you want a line in the logspace diagram, you need an exponential fit on the data. Or build the log of the data at first and fit the line afterwards.
카테고리
도움말 센터 및 File 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!