Smooth noisy data in the Live Editor
The Smooth Data task lets you interactively smooth noisy data. The task automatically generates MATLAB® code for your live script.
Using this task, you can:
Customize the method for smoothing data in a workspace variable.
Adjust parameters to generate less or more smoothing.
Visualize the input data compared to the smoothed data.
Open the Task
To add the Smooth Data task to a live script in the MATLAB Editor:
On the Live Editor tab, select Task > Smooth Data.
In a code block in the script, type a relevant keyword, such as
noisy. Select Smooth Data from the suggested command completions.
Input data — Valid input data from workspace
vector | table | timetable
This task operates on input data contained in a vector, table, or timetable. The
data can be of type
logical, or signed or unsigned integer types such as
For table or timetable input data, to smooth all variables with a supported type,
All supported variables. To smooth all variables of
double, or signed or unsigned
integer types, select
All numeric variables. To choose which
supported variables to smooth, select
Smoothing method — Method for smoothing data
Moving mean (default) |
Moving median |
Gaussian filter | ...
Specify the smoothing method as one of these options, which operate over local windows of data.
Moving average. This method is useful for reducing periodic trends in data.
|Moving median. This method is useful for reducing periodic trends in data when outliers are present.|
|Gaussian-weighted moving average.|
|Lowess linear regression. This method can be computationally expensive, but it results in fewer discontinuities.|
|Loess quadratic regression. This method is slightly more computationally expensive than local linear regression.|
|Robust Lowess linear regression. This method is a more computationally expensive version of local linear regression, but it is more robust to outliers.|
|Robust Loess quadratic regression. This method is a more computationally expensive version of local quadratic regression, but it is more robust to outliers.|
|Savitzky-Golay polynomial filter, which smooths according to a polynomial of specified degree, and is fitted over each window. This method can be more effective than other methods when the data varies rapidly.|
Moving window — Window for smoothing methods
Centered (default) |
Specify the window type and size for the smoothing method instead of specifying a general smoothing factor.
|Specified window length centered about the current point|
|Specified window containing the number of elements before the current point and the number of elements after the current point|
Window sizes are relative to the X-axis variable units.
The Smooth Data task does not support 2-D smoothing windows.
Version HistoryIntroduced in R2019b
R2022b: Plot multiple table variables
Simultaneously plot multiple table variables in the display of this Live Editor task. For table or timetable data, to visualize all selected table variables at once in a tiled chart layout, set the Variable to display field.
R2022b: Append smoothed table variables
Append input table variables with table variables containing smoothed data. For table or timetable input data, to append the smoothed data, set the Output format field.
R2022a: Live Editor task does not run automatically if inputs have more than 1 million elements
This Live Editor task does not run automatically if the inputs have more than 1 million elements. In previous releases, the task always ran automatically for inputs of any size. If the inputs have a large number of elements, then the code generated by this task can take a noticeable amount of time to run (more than a few seconds).
When a task does not run automatically, the Autorun indicator is disabled. You can either run the task manually when needed or choose to enable the task to run automatically.
R2021a: Operate on multiple table variables
This Live Editor task can operate on multiple table variables at the same time. For table
or timetable input data, to operate on multiple variables, select
Specified variables. Return all of
the variables or only the modified variables, and specify which variable to