y = sgolayfilt(x,k,f) applies a Savitzky-Golay FIR smoothing filter to the data in vector x. If x is a matrix, sgolayfilt operates on each column.
The polynomial order kmust be less than the frame size, f, which must be odd. If k = f-1, the filter produces no smoothing.
y = sgolayfilt(x,k,f,w) specifies a weighting vector w with length f, which contains the real, positive-valued weights to be used during the least-squares minimization.
If w is not specified or if it is specified as empty, [], w defaults to an identity matrix.
y = sgolayfilt(x,k,f,w,dim) specifies the dimension, dim, along which the filter operates.
If dim is not specified, sgolayfilt operates along the first non-singleton dimension; that is, dimension 1 for column vectors and nontrivial matrices, and dimension 2 for row vectors.
y = sgolayfilt(x,k,f) y = sgolayfilt(x,k,f,w) y = sgolayfilt(x,k,f,w,dim)
%Smooth the mtlb signal by applying a cubic Savitzky-Golay filter to data frames of length 41. load mtlb smtlb = sgolayfilt(mtlb,3,41); subplot(2,1,1) plot(1:2000, mtlb(1:2000)) axis([0 2000 -4 4]) title('mtlb') grid subplot(2,1,2) plot(1:2000,smtlb(1:2000)) axis([0 2000 -4 4]) title('smtlb') grid