A non-GUI function that will smooth a time series using a simple Gaussian filter.
zfilt = gaussfilt(t,z,sigma);
where t & z define the time series (t independent variable and z is data vector), and sigma defines the standard deviation (width) of the Gaussian filter.
Aray, could you expound on the low ranking? Maybe I can do something to improve it.
jon, thanks for the feedback. I originally wrote the function for a non-uniformly spaced time vector, which conv would not handle correctly. That said, I expect most uses of this function will be for uniformly spaced time vectors, where your criticism is exactly right.
I uploaded an update that will look to do the convolution unless the spacing is variable, in which case it will use the (ugly) loop.
Works fine, but implementation is could be improved/sped up by using conv(...) instead of a for loop to compute filtered waveform
Great! Does what it advertise. Thanks for this submission.
Removed extraneous keyboard command that was accidentally left in on previous update.
Use convolution if time vector is uniformly spaced.
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.