exponenta event banner

Иерархия графических объектов

Графические объекты MATLAB

Графические объекты - это визуальные компоненты, используемые MATLAB ® для графического отображения данных. Например, график может содержать линии, текст и оси, отображаемые в окне рисунка.

Каждый объект имеет уникальный идентификатор, называемый дескриптором. С помощью этого дескриптора можно управлять характеристиками существующего графического объекта, задав свойства объекта. Можно также задать значения свойств при создании графического объекта. Как правило, графические объекты создаются с помощью таких функций печати, как plot, bar, scatterи так далее.

Графики состоят из определенных объектов

При создании графика, например, путем вызова plot MATLAB автоматически выполняет ряд шагов для создания графика. Эти шаги включают создание объектов и установку для свойств этих объектов соответствующих значений для определенного графика.

Организация графических объектов

Графические объекты организованы в иерархию, как показано на следующей схеме.

Иерархический характер графических объектов отражает сдерживание объектов другими объектами. Каждый объект играет определенную роль в графическом представлении.

Например, предположим, что линейный график создается с помощью plot функция. Объект axes определяет опорную рамку для линий, представляющих данные. Рисунок - это окно для отображения графика. Рисунок содержит оси, а оси содержат линии, текст, легенды и другие объекты, используемые для представления графика.

Примечание

Оси - это отдельный объект, представляющий масштаб оси X, Y и Z, засечки, метки засечек, метки осей и т.д.

Вот простой график.

Этот график формирует иерархию объектов.

Связь «родитель-потомок»

Связь между объектами сохраняется в Parent и Children свойства. Например, родителем осей является фигура. Parent свойство оси содержит дескриптор фигуры, в которой он содержится.

Аналогично, Children свойство фигуры содержит любые оси, содержащиеся в фигуре. Число Children свойство также содержит дескрипторы любых других содержащихся в нем объектов, таких как легенды и объекты пользовательского интерфейса.

Для поиска дескрипторов объектов можно использовать отношение родитель-потомок. Например, при создании графика текущие оси Children содержит дескрипторы для всех строк:

plot(rand(5))
ax = gca;
ax.Children
ans = 

  5x1 Line array:

  Line
  Line
  Line
  Line
  Line

Можно также указать родителя объектов. Например, создайте объект группы и родительские линии от осей к группе:

hg = hggroup;
plot(rand(5),'Parent',hg)