如何在matlab中用样条函数平滑曲线

我要对位移曲线求导得到速度曲线,在求导之前想先对位移曲线进行平滑,该用什么方法?用matlab中的spline()可以吗?请说具体些,谢谢了!

也就是用插值方法,增加样点,用样条函数拟合,这样使得曲线平滑了


%不是很平滑的曲线

x=1:5;

y=1+x.^2+8*rand(1,length(x));

plot(x,y,'b-');


%插值,增加x样点数

x1 = 1:0.1:5

%用样条函数插值

y1=spline(x,y,x1);

hold on;

plot(x1,y1,'r-');

(红线比蓝线平滑)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-03-27
就是用spline()
spline()是根据采集的一些点平滑成一条曲线。
比如:
x=[1 2 3 5 8];
y=[3 2 6 4 9];
t=1:5;
ts=1:0.01:5;
xs=spline(t,x,ts);
ys=spline(t,y,ts);
plot(xs,ys,x,y,'o')

画出的图就是把(x,y) 这5个点进行光滑连接成曲线
相似回答