Map array values relative to another array
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Mathew Thomas
el 25 de Abr. de 2017
Comentada: Mathew Thomas
el 25 de Abr. de 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 comentarios
Respuesta aceptada
Honglei Chen
el 25 de Abr. de 2017
Maybe something like this?
b2 = reshape(interp1(a(:),b(:),a2(:),'linear','extrap'),size(a2))
HTH
0 comentarios
Más respuestas (1)
Andrei Bobrov
el 25 de Abr. de 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));
Ver también
Categorías
Más información sobre Interpolation 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!