Smoothing a curve and conserving the first and the last value of the curve

5 Ansichten (letzte 30 Tage)
Hi all,
I am trying to smooth a simple curve with evenly spaced sample points which starts e.g. at 1 for t0 and ends at 0 for t1. Can I force the smoothing algorythm (e.g. smoothdata()) to conserve the first and the last value of the curve such dat the smoothed curve also starts at 1 at t0 and ends at 0 at t1?
Thanks a lot!

Akzeptierte Antwort

Star Strider
Star Strider am 17 Sep. 2021
Probably the only way to do that is to use the 'SamplePoints' name-value pair, and smooth all but the beginning and end points —
x = 1:25;
y = randn(size(x));
ys = smoothdata(y(2:end-1), 'SamplePoints',x(2:end-1));
figure
scatter(x, y, 'p')
hold on
plot(x, [y(1) ys y(end)], '-r')
hold off
grid
.

Weitere Antworten (0)

Kategorien

Mehr zu Smoothing finden Sie in Help Center und File Exchange

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by