How do I smooth out a surface distribution plot?

5 views (last 30 days)
Leon on 9 Oct 2014
Commented: Leon on 11 Oct 2014
Looks like my data has some outliers that should be removed.
Instead of doing that manually, is there a way I can let Matlab do it? Thanks!
In case you need, below is the code to plot the map:
[X, Y] = meshgrid(linspace(min(lon),max(lon),100),linspace(min(lat),max(lat),100));
Z = griddata (lon, lat, V, X, Y);
[C1, h1] = contourf (X, Y, Z, [0:0.1:4], 'LineStyle', 'none' );

Accepted Answer

Bruno Pop-Stefanov
Bruno Pop-Stefanov on 10 Oct 2014
There is no off-the-shelf functionality in MATLAB that allows you to detect outliers in data. Techniques exist but it is still an active field of research.
You'll find a couple of File Exchange submission to remove outliers from data. For example:
Otherwise, you could maybe try to filter your data with a smoothing filter. Take a look at the filter function:
This will reduce the magnitude of peaks in your data.
  1 Comment
Leon on 11 Oct 2014
Thank you very much for the answer! This is helpful.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!