How do I smooth a plot ?
3 ビュー (過去 30 日間)
古いコメントを表示
Assuming I get a flying route graph like the attached one. Now I want the insect to fly in a smooth way - finite turning radius and finite accelerations. In other words, I want the 90 degrees turn into a vertical search to look like a curve, what's the best way to do it ?
Of course that I can lose some of the data points and replace them with others, or even add some new points in order to get a smooth curves, rather than an abrupt 90 degrees turns.
0 件のコメント
採用された回答
Jos (10584)
2014 年 7 月 9 日
If you have the signal processing toolbox FILTFILT, otherwise FILTER
x = [2 4 6 8 10 10 10 10 10 10 10 10 10 10 ] ;
y = [5 5 5 5 5 5 7 9 11 13 15 17 19 21 ] ;
n = 4 ; % smoothing window
b = ones(1,n) ;
xf = filtfilt(b,n,x) ;
yf = filtfilt(b,n,y) ;
plot(x,y,'bo',xf,yf,'r.-') ;
その他の回答 (2 件)
Jos (10584)
2014 年 7 月 8 日
You want to apply 2D (3D?) smoothing filters, which is quite easy if you have the signal processing toolbox. You can also search the File Exchange for suggestions.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!