我想为不同图形上的图链接轴。但是,我的绘图方法在为 GUI 设计的类中,并根据列表框选择绘制变量。每个列表框选择都会创建一个新图形,其中 Y 值不同(只有大小而不是长度)。我想做的是能够为所有连续的图连接轴。我注意到 linkaxes 函数仅适用于子图。有没有更简单的方法来完成我想做的事情?我的代码类似于下面的代码,其中 Y1 的值将根据列表框选择而改变。
X1=1:100;
Y1=sqrt(X1);
figure();
plot(X1,Y1)
谢谢!
我想为不同图形上的图链接轴。但是,我的绘图方法在为 GUI 设计的类中,并根据列表框选择绘制变量。每个列表框选择都会创建一个新图形,其中 Y 值不同(只有大小而不是长度)。我想做的是能够为所有连续的图连接轴。我注意到 linkaxes 函数仅适用于子图。有没有更简单的方法来完成我想做的事情?我的代码类似于下面的代码,其中 Y1 的值将根据列表框选择而改变。
X1=1:100;
Y1=sqrt(X1);
figure();
plot(X1,Y1)
谢谢!
所以我为解决我的问题所做的是创建两个属性来存储 fig 和 gca 数字,如下所示:
FigNums=[]; % Store figure numbers during plotting
AxNums=[]; % Store axes numbers during plotting
然后在方法中,我做了 AnonSubmitter85 推荐的事情:
app.FigNums = [app.FigNums figure()];
app.AxNums = [app.AxNums gca];
plot(xvar,yvar,'DisplayName',[app.getYvarName ' vs. ' 'Time']);
grid on;
legend(xvarname)
linkaxes(app.AxNums,'xy')
像魅力一样工作:)谢谢!