第二个子图消失了

Art*_*Art 6 matlab user-interface plot figure subplot

我有一个奇怪的(可能很容易解决)问题.我试图绘制(使用面板)两个图:

a1 = subplot(2,1,1, 'Parent', handles.cpd_plot, 'Position', [0.1, 0.4, 0.85, 0.45]);
a2 = subplot(2,1,2, 'Parent', handles.cpd_plot, 'Position', [0.1, 0.1, 0.85, 0.15]);
Run Code Online (Sandbox Code Playgroud)

但在绘制a2之后,a1消失了.我看到它的位置有些问题,当我提升a1一点('Position', [0.1, 0.5, 0.85, 0.45])它的工作(但它必须> = 0.5).问题出在哪儿?谢谢!

bla*_*bla 6

所以它可能正在发生,因为子图在与前一个图重叠时会删除一个图.我怀疑是因为子图瓦片编号(即子图(2,1,1)等)之间存在冲突的位置值,它具有自己的默认位置和您输入的位置.

因此subplot(m,l,p, 'position', [ a b c d]),您可以通过使用subplot位置信息来解决此问题,而不是使用,如下所示:

subplot('position',  [0.1, 0.4, 0.85, 0.45])
plot(1:10);
subplot('position', [0.1, 0.1, 0.85, 0.15])
plot(1:10);
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述