How can I get plot with smooth lines from this data?

Hi.
I want to get plot with smoother lines from this data.
a=(500,1000,1700,1300,1400,3900,3400,3000,2200,2400,3300,3800,4500,4500,4400,4300,4600,3700)
x=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18)
Thanks.

 Respuesta aceptada

If you do not have the Curve Fitting Toolbox, use the core MATLAB spline (link) function:
a=[500,1000,1700,1300,1400,3900,3400,3000,2200,2400,3300,3800,4500,4500,4400,4300,4600,3700];
x=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18];
xsm = linspace(min(x), max(x));
asm = spline(x, a, xsm);
figure
plot(x, a, '+r')
hold on
plot(xsm, asm, '-b')
hold off
grid
How can I get plot with smooth lines from this data - 2019 06 26.png

2 comentarios

Thanks Star Strider.
It really works.
As always, my pleasure!

Iniciar sesión para comentar.

Más respuestas (2)

KALYAN ACHARJYA
KALYAN ACHARJYA el 26 de Jun. de 2019
Editada: KALYAN ACHARJYA el 26 de Jun. de 2019
a=[500,1000,1700,1300,1400,3900,3400,3000,2200,2400,3300,3800,4500,4500,4400,4300,4600,3700]';
x=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]';
f=fit(x,a,'smoothingspline')
plot(f);
kalyan_11.png

5 comentarios

Thanks for your comment.
Is my answered in incorrect?
it is giving errors .
Have you have run the code, as provided (Copy and run)?
Can you show me the error?
Oh sorry KALYAN ACHARJYA.
that was my mistake.
now it is working.
thank you u very much for your rapid reply.

Iniciar sesión para comentar.

infinity
infinity el 26 de Jun. de 2019
Hello,
There is an option that you can refer,
a1 = smooth(a);
plot(x,a1)
There are many types of smooth function, you may read links below for more options.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by