How to plot a fit object without extrapolation?
8 ビュー (過去 30 日間)
古いコメントを表示
Hi, I am looking for a way to plot a curve fit object but without the extrapolation at the beginning and the end of the curve. My code for the current graph is as follows:
% Fit
[Fit.(string).fitresult, Fit.(string).gof] = fit( xData1, yData1, ft, 'Normalize', 'on' );
hc(k) = plot(xData1, yData1, '.', 'Marker', markerlist(k),'MarkerEdgeColor',colorlist(k,:),'MarkerFaceColor',colorlist(k,:));
hold on
% Plot fit
ha = plot(Fit.(string).fitresult);
Which generates this figure:

Since the end line, especially for the red curve, is not right, I need to remove that part. Does anyone have a solution? Thanks in advance! Best regards, Katharina
0 件のコメント
採用された回答
Sean de Wolski
2014 年 9 月 30 日
You can pass 'XLim' into fitresult's plot to plot only over a specific range in x.
2 件のコメント
Sean de Wolski
2014 年 10 月 1 日
Sorry, you're right and that certainly looks like a good enhancement request for cfits.
It looks like you'll have to evaluate it at the query points explicitly and then plot the x/y vectors.
For example:
x = 1:8;
y = fitresult(x); % evaluate at x
plot(x,y) % plot the vectors
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Fit Postprocessing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!