我有一组数据,其值位于某些 x、y、z 坐标处。但是,坐标不是均匀分布的。我想对数据进行插值并有一个 3D 插值图,其中颜色是每个 x、y、z 坐标处的插值(不是 z 的值)。
另外我应该提到我的数据被限制在空间中,我只想在接近的点之间进行插值。我有多个片状结构,我不希望在片材之间进行插值。因此,我想我需要一个点标准之间的距离。
我的问题可以通过这个 MATLAB 测试程序看到
x = rand(100,1)*16 - 8;
y = rand(100,1)*16 - 8;
z = rand(100,1)*16 - 8;
d = rand(100,1)*16 - 8;
散点图效果很好
scatter3(x,y,z,5,d);
colormap(jet);
colorbar;
我想要一个漂亮的表面,上面有那种颜色。当然,上面的插值会非常糟糕,因为它是随机点和颜色(值),但对我来说它更有意义。
关于如何做到这一点的任何想法?
编辑
我将强调我的问题的本地化性质(使用 scatter3 见下图)。
Suever 提出的非常有趣的解决方案,在与第一张图相同的数据上使用了 dedicatedInterpolant 给了我下面的图片
谢谢,
塞缪尔