在MATLAB中使用画笔时,标签为空

时间:2016-10-20 09:08:58

标签: matlab matlab-figure brush

此问题与This Question有关。

我从那里跟随了这个例子:

t=0:0.2:25; plot(t,sin(t),'.-');
brush on
pause
hBrushLine = findall(gca,'tag','Brushing');
brushedData = get(hBrushLine, {'Xdata','Ydata'});
brushedIdx = ~isnan(brushedData{1});
brushedXData = brushedData{1}(brushedIdx);
brushedYData = brushedData{2}(brushedIdx);

但是,findall(gca,'tag','Brushing')为空。 事实上,查看gca的属性后,标签Tag在设置brush on后为空。

我有MATLAB 2016a,我们也测试了MATLAB 2015a。

有谁知道如何找到所选数据?

此致 埃里克

1 个答案:

答案 0 :(得分:1)

答案是here

hLine = get(gca,'Children');
hBrushHandles = hLine.BrushHandles;
hBrushChildrenHandles = hBrushHandles.Children;  % Marker, LineStrip
hBrushChildrenHandles(1).VertextData

据我所知,这是从Matlab 2014及以后开始的。

此致 埃里克