子图中的 Matlab 重定位图
Matlab relocation graphs in the subplotted figure
我使用命令 subplot(1,2,1) 和 subplot(1,2,2) 绘制了我的图表。如您所见,我在图中有 2 个图表。我想重新定位图表,比如第一个图表应该在第二个图表的位置,第二个图表应该在第一个图表的位置。
我假设您已经绘制了数据并且不能再次绘制它们。然后你可以得到坐标轴句柄,即通过找到当前图形(gcf
)中的所有坐标轴对象指向每个子图的指针,它们是not图例和不是 颜色条。 (此 findobj
命令取自 Nzbuu 对 this question 的回答)
ax = findobj(gcf,'type','axes','-not','Tag','legend','-not','Tag','Colorbar');
要获取当前轴的位置,您可以读取轴对象的(嗯...)'Position'
属性:
pos = get(ax,'Position');
其中 returns 一个 2x1 元胞数组,其中每个条目都是相应轴的 1x4 位置向量。现在我们只需要交换两个位置:
set(ax(1),'Position',pos{2});
set(ax(2),'Position',pos{1});
就这样,两个支线互换了。
我使用命令 subplot(1,2,1) 和 subplot(1,2,2) 绘制了我的图表。如您所见,我在图中有 2 个图表。我想重新定位图表,比如第一个图表应该在第二个图表的位置,第二个图表应该在第一个图表的位置。
我假设您已经绘制了数据并且不能再次绘制它们。然后你可以得到坐标轴句柄,即通过找到当前图形(gcf
)中的所有坐标轴对象指向每个子图的指针,它们是not图例和不是 颜色条。 (此 findobj
命令取自 Nzbuu 对 this question 的回答)
ax = findobj(gcf,'type','axes','-not','Tag','legend','-not','Tag','Colorbar');
要获取当前轴的位置,您可以读取轴对象的(嗯...)'Position'
属性:
pos = get(ax,'Position');
其中 returns 一个 2x1 元胞数组,其中每个条目都是相应轴的 1x4 位置向量。现在我们只需要交换两个位置:
set(ax(1),'Position',pos{2});
set(ax(2),'Position',pos{1});
就这样,两个支线互换了。