Why delete(findobj(gca,'type', 'patch')) is not working for erasing scattered points ?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
JP Schnyder
am 13 Jan. 2020
Bearbeitet: Adam Danz
am 14 Jan. 2020
Here's a simple snippet that shows that
delete(findobj(gca,'type', 'patch'))
is not working for erasing scattered points:
figure
x = [1,2,3,4]
y = [1,2,3,7]
scatter(x,y,50);
delete(findobj(gca,'type', 'patch')) % not working
%delete(findobj(gca,'SizeData', 50)) % does work
Uncommenting the last line solves the problem, but this is a workaround, or what ?
0 Kommentare
Akzeptierte Antwort
Adam Danz
am 13 Jan. 2020
Bearbeitet: Adam Danz
am 14 Jan. 2020
"Why delete(findobj(gca,'type', 'patch')) is not working for erasing scattered points ?"
Instead,
delete(findobj(gca,'type', 'scatter'))
Or better yet, use the scatter output which does not require the use of the axis handle and is more responsible since you're deleting a specific object rather than deleting all existing matches to an object type within the current axes.
s = scatter(. . .);
delete(s)
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Graphics Object Programming finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!