根据MATLAB 文档:
如果一条线与面片或曲面共面,并且正在使用 zbuffer 或 OpenGL 渲染器,则这些线出现在顶部。
line
一个和一个对象的相对排列patch
不能被uistack
函数修改(例如,uistack(patchHandle,'top')
不uistack(lineHandle,'bottom')
改变一个对象相对于另一个对象的层)。是否可以在不选择替代渲染器的情况line
下强制 a 驻留在比 a 更低的层中?patch
根据MATLAB 文档:
如果一条线与面片或曲面共面,并且正在使用 zbuffer 或 OpenGL 渲染器,则这些线出现在顶部。
line
一个和一个对象的相对排列patch
不能被uistack
函数修改(例如,uistack(patchHandle,'top')
不uistack(lineHandle,'bottom')
改变一个对象相对于另一个对象的层)。是否可以在不选择替代渲染器的情况line
下强制 a 驻留在比 a 更低的层中?patch
图形对象根据它们的顺序堆叠get(gca,'children')
(第一个元素 = 顶部,最后一个元素 = 底部),因此重新排列该数组允许您更改线条、补丁等的层。
例子:
patch([0.25 0.25 0.75 0.75],[0.25 0.75 0.75 0.25],'y')
hold on;
plot([-1 1],[-1 1],'b-',[1 -1],[-1 1],'r-','linewidth',10)
目前从下到上:补丁、蓝线、红线
g=get(gca,'Children')
g=g([3 1 2])
set(gca,'children',g)
现在从下到上:蓝线,红线,补丁
g=get(gca,'Children')
g=g([1 3 2])
set(gca,'children',g)
现在从下到上:红线,蓝线,补丁