How to spline 163 data points into 100 data points?

4 visualizaciones (últimos 30 días)
Herald Grant
Herald Grant el 30 de Abr. de 2024
Comentada: Herald Grant el 2 de Mayo de 2024
I have a data set that is a "double" class 163x1 in a numeric matrix, I would like to spline this data into 100 points instead of 163 data points.
Although I have researched and checked on the 'Help' section of spline, I have followed it to the best of my abilities and I have searched here for answers, unfortunately I have not found my answer.
Furthermore, when I run through this code that I have created it says that "Index in position 2 is larger than array. This should be less than 1".
z = [lCOMz_FS1_1]';
x1 = 0:1:99;
y1 = linspace(z(1,1), z(1,163), 100);
COMz = spline(x1,y1);
plot(x1,y1,COMz)
I'd like to thank anyone in advance for such helping me on such a simple code.
  4 comentarios
Torsten
Torsten el 1 de Mayo de 2024
Editada: Torsten el 1 de Mayo de 2024
You want to interpolate - thus you have to make your z-data a function of 163 x-values. And in order to interpolate your data in 100 points, you have to specify 100 points somewhere in between these 163 x-values in which you want to do this.
Example:
x = linspace(0,1,163);
f = x.^2;
xinter = linspace(0,1,100);
finter = interp1(x,f,xinter,'spline');
hold on
plot(x,f)
plot(xinter,finter)
hold off
grid on
Herald Grant
Herald Grant el 1 de Mayo de 2024
Thank you so much Torsten! You have helped out a lot! Thank you for the kind explanation and the example provided.
You have helped me out a lot, the code worked and it worked perfectly within my system!
I truly appreciate you helping out on such a simple task.
x = linspace(0,1,163);
z = lCOMz_FS1_1;
len = linspace(0,1,100);
CoMz_interp = interp1(x,z,len,'spline');
hold on
plot(CoMz_interp)
hold off
grid on
This code game me exactly what I needed! Thank you.

Iniciar sesión para comentar.

Respuestas (2)

the cyclist
the cyclist el 30 de Abr. de 2024
I expect you want to use the spline method in the interp1 function. It may be possible to give more specific help if you upload the data. (You can attach a MAT file using the paperclip icon from the INSERT section of the toolbar.)
  4 comentarios
the cyclist
the cyclist el 1 de Mayo de 2024
I didn't see this comment until after Torsten seems to have solved your problem (using interp1!), so I guess you are all set.
Herald Grant
Herald Grant el 2 de Mayo de 2024
Yeah Torsten did help a lot, but thank you to The Cyclist for reaching out as well! I appreciate the help either way.

Iniciar sesión para comentar.


Image Analyst
Image Analyst el 1 de Mayo de 2024
See attached demo. You can easily use new values for the descriptively-named variables in the demo to do what you want.

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by