getAxes

Класс: matlab.graphics.chartcontainer.ChartContainer
Пакет: matlab.graphics.chartcontainer

Получите оси для подкласса контейнера графика

Синтаксис

ax = getAxes(obj)

Описание

ax = getAxes(obj) возвращает один или несколько объектов осей для графика, которая наследует от matlab.graphics.chartcontainer.ChartContainer базовый класс.

Входные параметры

расширить все

Объект класса, который наследует от matlab.graphics.chartcontainer.ChartContainer базовый класс.

Выходные аргументы

расширить все

Объект осей или массив объекты осей. Содержимое ax полезно для определения целевых осей, когда вы вызываете функции построения графика в вашем определении класса. Можно также использовать ax для задания свойств осей.

В зависимости от содержимого графика, ax может быть объектом скалярных осей или массивом объектов осей:

  • Если график еще не содержит объект осей, getAxes создает Декартовых оси и возвращает ее как ax.

  • Если график содержит один объект Декартовых, полярных или географических осей, ax возвращается как этот объект.

  • Если график содержит несколько объектов осей, ax - массив этих объектов.

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

Признаки

Protectedtrue

Чтобы узнать об атрибутах методов, см. «Атрибуты метода».

Примеры

расширить все

The setup метод является общим местом для вызова функций построения графика и установки состояния удержания осей. В обоих случаях необходимо задать целевые оси.

Создайте setup метод в файле определения класса. В рамках этого метода вызывайте getAxes чтобы получить объект осей ax. Затем постройте график двух линий путем прохождения ax как первый аргумент к plot и hold функций. Функции hold(ax,'off') в конце способа.

classdef TwoLinesPlot < matlab.graphics.chartcontainer.ChartContainer
    
    properties
        % ...
    end
    
    methods(Access = protected)
        function setup(obj)
            % Get the axes
            ax = getAxes(obj);
            
            % Plot two lines in the axes
            line1 = plot(ax,[1 2 3 4 5],[3 5 1 4 9]);
            hold(ax,'on')
            line2 = plot(ax,[1 2 3 4 5],[30 52 21 9 18]);
            
            % Turn off hold state
            hold(ax,'off')
        end
        function update(obj)
            % ...
        end
    end
end

Задайте setup метод в файле определения класса. В рамках этого метода вызывайте getAxes чтобы получить объект осей ax. Затем установите цвет оси x и угол шрифта для осей. Функции hold(ax,'on') перед вызовом любых функций построения графика. Затем позвоните hold(ax,'off') в конце способа.

classdef RedAxisPlot < matlab.graphics.chartcontainer.ChartContainer
    
    properties
        % ...
    end
    
    methods(Access = protected)
        function setup(obj)
            ax = getAxes(obj);
            ax.XColor = [1 0 0];
            ax.FontAngle = 'italic';
            hold(ax,'on')
            
            % Call plotting functions
            % ...
            
            hold(ax,'off')
        end
        function update(obj)
            % ...
        end
    end
end

Ограничения

  • Установка OuterPositon, InnerPosition, Position, или PositionConstraint свойства на осях могут привести к неожиданным результатам. Вместо этого сконфигурируйте положение на образец своего графика.

  • Изменение Parent свойство осей не рекомендуется. Вместо этого задайте Parent недвижимость на образец вашего графика.

Вопросы совместимости

расширить все

Поведение изменено в R2020a

Введенный в R2019b