如上所述,编程方式确定Matlab axes对象是2D还是3D绘图的最简单方法是什么?
如上所述,编程方式确定Matlab axes对象是2D还是3D绘图的最简单方法是什么?
从axis
函数的文档中可以了解到:
V = axis
返回一个包含当前绘图缩放比例的行向量。如果当前视图为二维,则V
有四个分量;如果为三维,则为六个分量。
因此,你可以通过调用以下方式获取轴的尺寸:
plot_dim = numel(axis)/2;
当输入2D的时候,它将返回2
;当输入3D时,它将返回3
。
如果您有一个指向axes
对象的引用ax
,则可以通过将ax
传递给axis
来修改上面的代码:
plot_dim = numel(ax)/2;
检查[az,el] = view
的输出。如果它是二维的,则el == 90
。
[az,el] = view(hax)
,其中hax
是感兴趣的轴的句柄。谢谢! - crobarel=90
,它仍然是一个3D图。 - Cris Luengo