Interpolation of 3 dimensional values from a excel file

i got 10 values of x for each value of x i have 10 values of y and the values of z for each x depends on y
how should i interpolate them so that i can give any value of x and y in between the range to get ultimate value of z.
i have attached a file of values for more clarity.

 Accepted Answer

[num,txt,raw] = xlsread('Mappe1.xlsx') ;
x = num(:,1) ; x(isnan(x))= [ ];
A = num(:,2:end) ;
A(isnan(A(:,1)),:)= [] ;
Y = A(1:2:end,:) ;
Z = A(2:2:end,:) ;
X = repmat(x,1,size(Y,1)) ;
idx = ~isnan(Z) ;
F = scatteredInterpolant([X(idx) Y(idx)],Z(idx),'linear','none');
iwant = F(250,0.7)

5 Comments

Error using scatteredInterpolant Invalid extrapolation type specified.
F = scatteredInterpolant([X(idx) Y(idx)],Z(idx));
Try this alone.....or read about griddata
what should i do if i want to have series of z values with respect to series of x and y values
when x and y are not of same length
Please don't use flags for things that should just be a comment, or in this case, just accepting the answer is enough to say it worked.

Sign in to comment.

More Answers (0)

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!