Manually interpolate a 2D array

8 visualizzazioni (ultimi 30 giorni)
Hello,
Basically I have a question on how to manually interpolate a 2D array:
Let's say I have a 80 x 100 array and want to make it into 100 x 120. I want to increase the size of my array, and interpolate the values of the initial array.
Can anyone help me with this matter?
Thanks alot

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 25 Nov 2019
a = rand(4,8);% Let a - your array
F = griddedInterpolant(a);
[i,j] = ndgrid(linspace(1,4,10),linspace(1,8,12)); % grid for new array 10 x 12
out = F(i,j); % new array
  1 Commento
Angelina Papathanasiou
Angelina Papathanasiou il 25 Nov 2019
I had the same question but I have the constraint that I cannot use complex commands (griddedInterpolant(), ndgrid()). Is there a way of receiving the same answer without them?
1.Can I use meshgrid() instead of ndgrid()? Is there a simple way to do the same without gridderInterpolant(), using "first pricinples"?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Interpolation in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by