Использование FINDALL :
allAxesInFigure = findall(figureHandle,'type','axes');
Если вы хотите получить все ручки осей в любом месте Matlab, вы можете сделать следующее:
allAxes = findall(0,'type','axes');
EDIT
Чтобы ответить на вторую часть вашего вопроса: Вы можете проверить, является ли список дескрипторов осями, получив свойство type
:
isAxes = strcmp('axes',get(listOfHandles,'type'));
isAxes
будет верно для каждого дескриптора типа axes
.
EDIT2
Чтобы выбрать только дескрипторы осей, которые не являются легендами, необходимо очиститьсписок осей (ax
маркеры, удалив все маркеры, чей тег не 'legend'
или 'Colorbar'
:
axNoLegendsOrColorbars= ax(~ismember(get(ax,'Tag'),{'legend','Colobar'}))