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

403 views (last 30 days)
Herline van der Spuy on 13 Sep 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. Jan on 13 Sep 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.
Herline van der Spuy on 14 Sep 2021
Brilliant! Thank Jan. I really appreciate this.

### Categories

Find more on Surface and Mesh Plots in Help Center and File Exchange

R2021a

### Community Treasure Hunt

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

Start Hunting!