exponenta event banner

getAxes

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

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

Синтаксис

ax = getAxes(obj)

Описание

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

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

развернуть все

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

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

развернуть все

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

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

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

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

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

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

Признаки

Protectedtrue

Сведения об атрибутах методов см. в разделе Атрибуты метода.

Примеры

развернуть все

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