Matlab 3D矩阵绘图

7

我在MATLAB中创建了一个三维矩阵。该矩阵的值是矩形截面上该点的速度。我希望绘制一个图表,其中颜色显示每个位置的值,这可能吗?

换句话说,我有一个大小为100x100x200的矩阵。我想要一个图表,它有100x100x200个点,每个点的颜色与其值相关。


如果答案解决了你的问题,你应该毫不犹豫地接受它。 - Sibbs Gambling
1个回答

11

这个问题与此问题非常相似,您可能需要查看一下。

更新:

假设您有一个三维矩阵A

A = rand(100,100,200);

您希望将A的每个条目映射到其3D坐标处的颜色进行绘制。首先生成坐标:

[x,y,z] = meshgrid(1:100,1:100,1:200);

现在,您已经准备好使用scatter3了:

scatter3(x(:),y(:),z(:),5,A(:))

这里的 : 索引按列对坐标进行向量化。

希望能对你有所帮助。


这对于scatter3函数看起来很有用,但是如果我的矩阵目前的维度与上面发布的维度相同,我该如何将我的值放入其中? - dojogeorge
@user1045280:我更新了我的回答以反映您的评论。 - upperBound

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接