在3d空间中绘制2d彩色图像

7次浏览(最近30天)
詹姆斯Mathio
詹姆斯Mathio 2021年8月21日
回答: 沃尔特·罗伯森 2021年8月21日
我有一组。xyz数据文件,其中x和y是坐标,z是给每个坐标(电阻率)的值。使用surf函数作为下面的代码,我能够看到在每个位置的电阻率的三维彩色图像。使用视图(30,90),我可以看到它在2d空间的投影。然而,我想要的与视图输出的略有不同。我们知道在现实中每个(X,Y)坐标都有一定的高度可以关联。因此,我希望视图的2d彩色输出被绘制在3d空间中,其中z轴表示可变高度,而不是颜色条。怎么做呢?
%b是一个M × 3矩阵
x = b (: 1);
: y = b (2);
z = b (: 3);
N = 250;
xvec = linspace(min(x), max(x), N);
yvec = linspace(min(y), max(y), N);
[X, Y] = ndgrid(xvec, yvec);
F = scatteredInterpolant(x, y, z);
Z = f (x, y);
冲浪(X, Y, Z,“edgecolor”“没有”);
colormap默认的
colorbar
%视图(0,90)
2的评论
詹姆斯Mathio
詹姆斯Mathio 2021年8月21日
每个坐标(X,Y,Z)都有一个特定的值。我的意思是,我有一个三维坐标空间,对于每个坐标,我都给一个特定的值R(电阻率)。我可以把这个作为一个二维空间(X, Y)点包含一定的Z和r .所以我的问题是如果我想使用上网功能,它给了我一个3 d彩色图像,在X和Y轴坐标和Z轴显示的值r .所以图片我不能显示的第三个坐标点(X, Y, Z)数据点,只显示X和Y。所以Z坐标没有显示在输出中。你明白问题了吗?

登录评论。

标签

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!