我有一个三维图在MATLAB中由许多三维线(由line([...],[...],[...],...)
)组成.如果我用鼠标旋转图形和旋转工具(图形窗口中的可点击图标),MATLAB总是会重新标定轴的大小。我知道使用axis([...])
手动调整轴限值是可能的,但我不知道3D线或表面物体的最小/最大值。
您可以通过键入surf(peaks)
来自己测试它。轴在0-50和0-60之间不断变化.我正在使用R2011a。
你有什么建议,如何获得三维-分钟/最大值的组合三维线/三维表面网格,以便能够手动设置轴限值?
谢谢
发布于 2017-01-16 11:05:02
我认为您还没有发现命令axis
。来自文献资料
轴vis3d 冻结高宽比属性。将绘图框高宽比模式和数据高宽比模式属性设置为手动。
示例:
> surf(peaks);
> axis vis3d
...no更多的随机轴缩放变化。
如果确实需要提取数据的最小/最大值(罕见情况),可以使用以下内容:
plots = get(gca, 'children');
zdata = get(plots, 'zdata');
if isscalar(plots)
zdata = {zdata}; end
maxZ = cellfun(@(x)max(x(:)), zdata);
minZ = cellfun(@(x)min(x(:)), zdata);
https://stackoverflow.com/questions/41674636
复制相似问题