Map array values relative to another array
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Mathew Thomas
le 25 Avr 2017
Commenté : Mathew Thomas
le 25 Avr 2017
I have an array of xy coordinates, a = [4000,3000; 4200, 3100; 4014, 2900]; Array 'a' has been translated to lat lon values b = [72.1321, -32.789; 73.1879, -31.8987; 72.89109, -32.8796];
Now I have another set of xy coordinates, a2 = [3600,2900; 4000, 2100; 4200, 3200]; How can I get 'b2' based on interpolating values in 'a','b' and 'a2'?
Thanks, Mathew
0 commentaires
Réponse acceptée
Honglei Chen
le 25 Avr 2017
Maybe something like this?
b2 = reshape(interp1(a(:),b(:),a2(:),'linear','extrap'),size(a2))
HTH
0 commentaires
Plus de réponses (1)
Andrei Bobrov
le 25 Avr 2017
aa = sort(a);
bb = sort(b);
F = {griddedInterpolant(aa(:,1),bb(:,1)),griddedInterpolant(aa(:,2),bb(:,2))};
out = cell2mat(cellfun(@(f,x)f(x),F,num2cell(a2,1),'un',0));
Voir également
Catégories
En savoir plus sur Interpolation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!