How to plot a smooth curve with only a few points?

438 visualizaciones (últimos 30 días)
Herline van der Spuy
Herline van der Spuy el 13 de Sept. de 2021
Comentada: Herline van der Spuy el 14 de Sept. de 2021
Hi,
I have 6 data points, it's very little, but it's all I have. How do I get a smooth plot from that? Like Excel has the option, by I want to use matlab.
time = PENO(:,1);
s24 = PENO(:,2);
sx24 = smooth(s24)
plot(time,sx24,'-o','Color',blue,'LineWidth',1.5,'MarkerSize',5,'MarkerFaceColor',blue);
This is what I get: The blue line is the original plot, without the smooth. And then I tried to smooth, which is the black line.

Respuesta aceptada

Jan
Jan el 13 de Sept. de 2021
Either decide for a linear interpolation:
x = 1:6;
y = rand(1, 6);
plot(x, y, 'ko');
hold on
xx = linspace(1, 6, 100);
yy1 = interp1(x, y, xx, 'cubic');
plot(xx, yy1, 'r-');
yy2 = interp1(x, y, xx, 'spline');
plot(xx, yy2, 'b-');
yy3 = interp1(x, y, xx, 'makima');
plot(xx, yy3, 'c-');
Or if you know the function of your data, fit a model to the measured values.

Más respuestas (0)

Categorías

Más información sobre Smoothing en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by