how to find brushed data

41 Ansichten (letzte 30 Tage)
eric jackson
eric jackson am 13 Okt. 2021
Kommentiert: eric jackson am 15 Okt. 2021
I want to create a figure, plot some data, manually brush some of that data and then run some analysis on the selected data. In Matlab 2010b I created one subroutine which created several figures, each with plot:
h=figure;
scatter(xdat(ii),ydat(ii));
brush(h,'on');
In the 2nd subroutine I found the brushed data:
b0=findobj('-property','BrushData');
xx=get(b0,'XData')
yy=get(b0,'YData');
Ths no longer works in Matlab 2021. b0 comes back empty. How do I find the Brushed data?

Akzeptierte Antwort

Yair Altman
Yair Altman am 15 Okt. 2021
In the new graphics system (R2014b onward), the brushed data info can be extracted from the hidden/undocumented BrushHandles property, as exaplained here: https://undocumentedmatlab.com/articles/hidden-hg2-plot-functionality
As Dave noted above, it's a bit dangerous to rely on undocumented properties/features, but note that this particular feature (like the vast majority of other undocumented features in Matlab) has not changed since R2014b. So while it might indeed stop working in the next release, history has shown that this is in fact unlikely. As long as you're aware of the limitations/risks, you can use these features to your advantage.
  2 Kommentare
eric jackson
eric jackson am 15 Okt. 2021
h.BrushData comes back empty.
eric jackson
eric jackson am 15 Okt. 2021
My mistake this time. I found it. Thanks.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Graphics Performance finden Sie in Help Center und File Exchange

Produkte


Version

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by