Matlab 从Ginput获取子批次号

Matlab 从Ginput获取子批次号,matlab,matlab-figure,Matlab,Matlab Figure,考虑下面的例子 f = figure(1); ax(1) = subplot(2,1,1); plot(1:100,randi(50,1,100)); ax(2) = subplot(2,1,2); plot(1:100,randi(50,1,100)) [x, ~] = ginput(2); clickedAx = gca 我是否可以从轴句柄属性中单击用于输入ginput的子批次号?或者其他方式?您可以使用gca为您提供单击的轴,并使用ismember将其与轴数组进行比较 [~,

考虑下面的例子

f = figure(1);
ax(1)  = subplot(2,1,1);
plot(1:100,randi(50,1,100));
ax(2)  = subplot(2,1,2);
plot(1:100,randi(50,1,100))
[x,  ~] = ginput(2);  
clickedAx = gca

我是否可以从轴句柄属性中单击用于输入ginput的子批次号?或者其他方式?

您可以使用
gca
为您提供单击的轴,并使用
ismember将其与
轴数组进行比较

[~, axnum] = ismember(gca, ax);
如果不喜欢指定两个输出参数,也可以编写

axnum = find(ismember(ax, gca));

您可以使用
gca
为您提供单击的轴,并使用
ismember
将其与
轴数组进行比较

[~, axnum] = ismember(gca, ax);
如果不喜欢指定两个输出参数,也可以编写

axnum = find(ismember(ax, gca));

如果用户同时单击两个轴怎么办?如果用户同时单击两个轴怎么办?