fitted curve start from zero?
이전 댓글 표시
답변 (1개)
Star Strider
2018년 12월 9일
The easiest way is to not specify a y-intercept in the model you want to fit.
Example —
x = 0:2:100;
y = 3E+3 - (x-50).^2 + (x-50) + randn(1, numel(x))*50;
B = [x(:).^2 x(:)] \ y(:);
Y = [x(:).^2 x(:)] * B;
figure
plot(x, y, '.', x, Y, '-r')
grid
Here, x begins at 0, and not including a y-intercept in the model is the same as forcing it through 0.
Experiment to get the result you want, with your model and data.
댓글 수: 2
Davide Cerra
2018년 12월 9일
Star Strider
2018년 12월 9일
My pleasure.
You can impose some constraints with lsqcurvefit and the other Optimization Toolbox functions. This depends on what you want to constrain.
I don’t have the Curve Fitting Toolbox. (I can do everything I need with the Optimization and Statistics and Machine Learning Toolboxes.)
카테고리
도움말 센터 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
