Interpolate a 1024x116 Matrix to a 1024x1024 Matrix
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Christopher Gordon
le 22 Jan 2021
Commenté : Walter Roberson
le 26 Jan 2021
Hello!
I have an array of 116 curves (columns) with 1024 data points (rows) each. What I would like to do is expand the matrix to include the curves at the intermediate values between the 116 curves. Which interpolation function should I use, interp1() or interp2()?
0 commentaires
Réponse acceptée
Walter Roberson
le 23 Jan 2021
Assuming the curves are independent of each other, use interp1()
x = 1:116;
c1 = randn(1,116);
c2 = rand(1,116)*5;
y = linspace(-5,5,1024) .';
curves = c2 .* exp(c1.*y - (y-2).^2);
imagesc(x, y, curves)
xq = linspace(1, 116, 1024);
curves2 = interp1(x, curves.', xq) .';
imagesc(xq, y, curves2)
1 commentaire
Walter Roberson
le 26 Jan 2021
You need to rename or delete your C:\Users\CGordon\Desktop\FindPeaksTrials\interp1.m as it is interfering with calling the MATLAB interp1 function.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Interpolation dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!