Error using scatteredInterpolant Sample values must be a double array.
Show older comments
Dear all,
I use griddata to interpolate one 2D data. The codes worked quite well half a year. But since today, it always showed an error "Error using scatteredInterpolant. Sample values must be a double array."
Can anyone do me a favor. Thanks a lot.
5 Comments
Image Analyst
on 26 Nov 2025
Sure, we'll try if you let us. If you still have questions, then attach your data and code to read it in and interpolate it with the paperclip icon after you read this:
Star Strider
on 26 Nov 2025
It would help to have Xf0, Yf0 and Z0 as the DAQ returns them.
If everything worked well for a year and there have been no changes (same MATLAB release/version, same DAQ software), something else must have changed.
I can duplicate the error if I pass string values to scatteredinterpolant.
t = linspace(3/4*pi,2*pi,5)';
x = [3*cos(t); 2*cos(t); 0.7*cos(t)];
y = [3*sin(t); 2*sin(t); 0.7*sin(t)];
v = repelem([-0.5; 1.5; 2],length(t));
F = scatteredInterpolant(num2str(x),y,v);
Try adding a str2double command to the values returned by your DAQ.
Walter Roberson
on 27 Nov 2025
I would use class() on Xf0, Yf0 and Z0 to check that they are in fact class double.
Accepted Answer
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!