MATLAB: What is the solution for “Error using griddedInterpolant The grid vectors must contain unique points.”

MATLAB: What is the solution for “Error using griddedInterpolant The grid vectors must contain unique points.”

interpolation

Hi,
I need to interpolate the data of 243 frame into 51 frame which 0 to 100%. However, the result shows
“Error using griddedInterpolant The grid vectors must contain unique points.”
I’m not sure how to solve the error and what is the meaning of unique points.
Thank you in advance.
X=xlsread('JRF DATA 10DEG.xlsx',1,'J4:M243');
% Make original data


oldPcntValsx = X(:,1) ;
oldXvals = X(:,2) ;
% Set a new spacing from 0 to 1 and interpolate


newPcntValsx = 0:2:100;
newXvals = interp1(oldPcntValsx, oldXvals, newPcntValsx);
newX = newXvals(:);
% Make original data
oldPcntValsy = X(:,1) ;
oldYvals = X(:,3) ;
% Set a new spacing from 0 to 1 and interpolate
newPcntValsy = 0:2:100;
newYvals = interp1(oldPcntValsy, oldYvals, newPcntValsy);
newY =newYvals(:);
% Make original data
oldPcntValsz = X(:,1) ;
oldZvals = X(:,4) ;
% Set a new spacing from 0 to 1 and interpolate
newPcntValsz = 0:2:100;
newZvals = interp1(oldPcntValsz, oldZvals, newPcntValsz);
newZ = newZvals(:);
N2 = [newX,newY,newZ];

Best Answer

  • You’re interpolating based on the gridpoints located in column J of your Excel file. Each gridpoint must be unique (i.e., different from every other gridpoint), but J188 = J189. That’s why you’re getting an error.
  • Add a Comment

    Your email address will not be published. Required fields are marked *