Filter löschen
Filter löschen

How do I use the tag/name/handle of a axes rather than gca

28 Ansichten (letzte 30 Tage)
Harry Smith
Harry Smith am 14 Nov. 2017
Bearbeitet: Stephen23 am 14 Nov. 2017
Can I use the tag/name/handle of a axes rather than gca

Akzeptierte Antwort

Guillaume
Guillaume am 14 Nov. 2017
Bearbeitet: Guillaume am 14 Nov. 2017
You can use findobj to find axes with a given tag (as far as I know, there's no name property for axes)
hax = findobj(groot, 'Type', 'axes', 'Tag', yourtag);
But best would be to store in a variable the handle of the axes when you create it, avoiding having to search for it entirely.

Weitere Antworten (1)

Stephen23
Stephen23 am 14 Nov. 2017
Bearbeitet: Stephen23 am 14 Nov. 2017
While you could use the tag to locate and work with graphics obejcts, actually the simplest and most reliable way to access graphics objects is to use handles. All graphics objects (lines, patches, axes, images, etc) are represented by handles, and you can pass those handles to other functions or use the handles to set or get any of the properties of that object. To know how to access graphics objects using their handle refer to the MATLAB documentation:
Graphics functions (except for some high-level ones) return a handle to the object that the function creates. You simply need to allocate this handle to a variable and use it as required. I would recommend that you always obtain and use all graphics object handles explicitly, and never rely on gca or gcf etc in code that you actually want to work reliably.
Here is a simple example of using graphics handles:
fgh = figure();
axh = axes('Parent',fgh);
plot(axh,X,Y)

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!

Translated by