how to find brushed data

42 vues (au cours des 30 derniers jours)
eric jackson
eric jackson le 13 Oct 2021
Commenté : eric jackson le 15 Oct 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?
  1 commentaire
eric jackson
eric jackson le 15 Oct 2021
Thanks for your help.

Connectez-vous pour commenter.

Réponse acceptée

Yair Altman
Yair Altman le 15 Oct 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 commentaires
eric jackson
eric jackson le 15 Oct 2021
h.BrushData comes back empty.
eric jackson
eric jackson le 15 Oct 2021
My mistake this time. I found it. Thanks.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by