微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用plot3绘制3D矩阵

如何解决如何使用plot3绘制3D矩阵

我有一个图像(mat文件),可以将其作为2D矩阵2 * 10095进行访问。 然后,我对其进行线性代数运算,以将其投影到法向向量N = [1,2,3]的平面上,并获得3D矩阵的值(x,y,z)。

如何在Matlab中用plot3绘制3D矩阵? plot3接受三个参数(x,y,z),矩阵的每一列都具有这些参数[x; y; z],但是如何将所有10095列传递给plot3-不会向我显示图像“放置”根据我在z轴上的计算结果而相应地降低?

我用它来绘制图像作为2D矩阵时:

plot(T2(1,:),T2(2,'k.','MarkerSize',1);

解决方法

如果在此配置中设置了数据:

底层(第一层)→x组件/值(:,:,1)

中间层(第二层)→y组件/值(:,2)

顶层(第三层)→z组件/值(:,3)

对于平滑/内插图,可以使用函数surf()

3D Scatter Plot

%Random test data%
Matrix = zeros(2,10095,3);
Matrix(:,1) = randn(2,10095);
Matrix(:,2) = randn(2,3) = randn(2,10095);

%Grabbing each x,y,z coordinate of the matrix%
X = Matrix(:,1);
Y = Matrix(:,2);
Z = Matrix(:,3);

plot3(X,Y,Z,'o','color','b');
grid;

使用MATLAB版本:R2019b

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。