F = scatteredInterpolant(x, y, z, d, 'linear')
% 假设这是我们的四维散点数据
x = rand(100, 1) * 10; % 100个x坐标值
y = rand(100, 1) * 10; % 100个y坐标值
z = rand(100, 1) * 10; % 100个z坐标值
d = rand(100, 1); % 100个d值,表示在(x, y, z)点上的某种属性
% 使用scatteredInterpolant创建插值函数
F = scatteredInterpolant(x, y, z, d, 'linear'); % 'linear'表示线性插值
% 现在可以使用F来预测新位置的d值
% 例如,在(2.5, 2.5, 2.5)位置插值
xi = 2.5;
yi = 2.5;
zi = 2.5;
di = F(xi, yi, zi);
% 显示插值结果
fprintf('在点(%f, %f, %f)处的插值d值为: %f\n', xi, yi, zi, di);
% 可视化原始点和插值结果(仅可视化三维空间中的点)
% 由于无法直接可视化第四维,仅展示(x, y, z)空间中的点
figure;
scatter3(x, y, z, 10, d, 'filled'); % 使用d值作为颜色数据来区分点
colormap('jet');
colorbar;
xlabel('X');
ylabel('Y');
zlabel('Z');
title('四维散点数据的三维可视化(颜色表示第四维)');