![]() |
在轴外添加图例而无需在MATLAB中重新缩放
我在MATLAB中有一个GUI,其中预先放置了一组轴。我正在使用图例的location属性将其放置在轴的右侧。但是,通过这样做,轴将重新缩放,以使轴+轴角占据轴的原始宽度。有什么办法可以避免调整大小?
例: x=0:.1:10; y=sin(x); figure pos=get(gca,'position'); pos(3)=.5; %#re-size axes to leave room for legend set(gca,'position',pos) plot(x,y) 到目前为止,我得到: [IMG]https://i.stack.imgur.com/KAMj0.png[/IMG] 地点图例: legend('sin(x)','location','eastoutside') ... aaaaand ... [IMG]https://i.stack.imgur.com/CizZG.png[/IMG] MATLAB将其全部压缩到原始轴空间中。可以解决吗? [B]回答:[/B] [B]编辑[/B] %# create three axes with custom position x=0:.1:10; y=sin(x); hAx1 = axes('Position',[0.05 0.05 0.7 0.2]); plot(hAx1, x,y) hAx2 = axes('Position',[0.05 0.4 0.7 0.2]); plot(hAx2, x,y) hAx3 = axes('Position',[0.05 0.75 0.7 0.2]); plot(hAx3, x,y) %# add legend to middle one h = legend(hAx2, 'sin(x)'); pos = get(h,'position'); set(h, 'position',[0.8 0.5 pos(3:4)]) [IMG]https://i.stack.imgur.com/yyOpt.png[/IMG] [url=https://stackoverflow.com/questions/3602571]更多&回答...[/url] |
所有时间均为北京时间。现在的时间是 01:07。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.