首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在不重绘图形的情况下将轴移到前面?

在不重绘图形的情况下将轴移到前面?
EN

Stack Overflow用户
提问于 2014-08-06 18:13:31
回答 2查看 10.5K关注 0票数 5

在Matlab中有没有一种方法可以在不让Matlab隐式执行重绘(drawnow)的情况下将轴放在前面?

我的问题的背景:我正在准备一个有几个子情节的大图。在它们中的一些我有两个轴叠加,因为我想在两个不同的y尺度上看到相同的数据。在尝试了轴设置之后,我终于得到了我所期望的图形。

但是:我需要将其中一个轴放在前面(在我的例子中,左轴是hAxL)。所以我在我的代码中有这样一行:axes(hAxL);这是有效的,但是,似乎Matlab不仅把轴放在前面,而且还重新绘制了图形。

这很遗憾,因为我正在用'visible','off'准备整个图形来加速它。隐式的drawnow破坏了我的想法,并使图形弹出几次,这很烦人,代码执行的时间也更长……

我已经尝试过了:set(gcf ,'CurrentAxes',hAxL),但它只将hAxL设置为当前轴,而不会将其置于最前面。有没有办法解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-06 18:18:35

也许uistack可以解决这个问题。

试一试

代码语言:javascript
复制
uistack(hAxL, 'top')
票数 4
EN

Stack Overflow用户

发布于 2014-11-17 09:31:15

这也是一个非常简单的解决方案,应该适用于这种情况。

代码语言:javascript
复制
set(hAxL ,'Layer', 'Top')
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25157724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档