Пакет: matlab.graphics.chartcontainer
Базовый класс для разработки объектов диаграммы
matlab.graphics.chartcontainer.ChartContainer класс для определения вашего собственного класса объектов диаграммы. Когда вы задаете подкласс этого базового класса, можно использовать ChartContainer свойства и методы, чтобы создать ваши объекты диаграммы. Задайте этот синтаксис на первой линии вашего файла определения класса, чтобы непосредственно наследоваться ChartContainer класс, где MyChart имя вашего объекта:
classdef MyChart < matlab.graphics.chartcontainer.ChartContainer
matlab.graphics.chartcontainer.ChartContainer классом является handle класс.
Abstract | true |
HandleCompatible | true |
Для получения информации об атрибутах класса см. Атрибуты класса.
InnerPosition — Стройте диаграмму размера и местоположения, исключая поля[left bottom width height]Стройте диаграмму размера и местоположения, исключая поля для художественных оформлений, таких как подписи по осям и отметки деления. Задайте это свойство как вектор формы [left bottom width height]. Значения находятся в модулях, заданных Units свойство.
left — Расстояние от левого края родительского контейнера к внутреннему левому краю графика, который исключает поля. Как правило, родительский контейнер является фигурой, панелью или вкладкой.
bottom — Расстояние от базового края родительского контейнера к внутреннему базовому краю графика, который исключает поля.
width — Ширина графика, исключая поля.
height — Высота графика, исключая поля.
Установка этого свойства не оказывает влияния, когда родительским элементом графика является TiledChartLayout.
GetAccess | public |
SetAccess | public |
Dependent | true |
NonCopyable | true |
OuterPosition — Стройте диаграмму размера и местоположения, включая поля[left bottom width height]Стройте диаграмму размера и местоположения, включая поля для художественных оформлений, таких как подписи по осям и отметки деления. Задайте это свойство как вектор формы [left bottom width height]. Значения находятся в модулях, заданных Units свойство.
left — Расстояние от левого края родительского контейнера к внешнему левому краю графика, который включает поля. Как правило, родительский контейнер является фигурой, панелью или вкладкой.
bottom — Расстояние от базового края родительского контейнера к внешнему базовому краю графика, который включает поля.
width — Ширина графика, включая поля.
height — Высота графика, включая поля.
Установка этого свойства не оказывает влияния, когда родительским элементом графика является TiledChartLayout.
GetAccess | public |
SetAccess | public |
Dependent | true |
NonCopyable | true |
Position — Стройте диаграмму размера и местоположения, исключая поля[left bottom width height]Стройте диаграмму размера и местоположения, исключая поля для художественных оформлений, таких как подписи по осям и отметки деления. Задайте это свойство как вектор формы [left bottom width height]. Это свойство эквивалентно InnerPosition свойство.
Установка этого свойства не оказывает влияния, когда родительским элементом графика является TiledChartLayout.
GetAccess | public |
SetAccess | public |
Dependent | true |
NonCopyable | true |
PositionConstraint — Положение, чтобы содержать постоянный'outerposition' | 'innerposition'Свойство Position содержать постоянный при добавлении, удаляя или изменяя художественные оформления в виде одного из следующих значений:
'outerposition' — OuterPosition свойство остается постоянным, когда вы добавляете, удаляете, или художественные оформления изменения, такие как заголовок или подпись по осям. Если какие-либо позиционные корректировки необходимы, MATLAB® настраивает InnerPosition свойство.
'innerposition' — InnerPosition свойство остается постоянным, когда вы добавляете, удаляете, или художественные оформления изменения, такие как заголовок или подпись по осям. Если какие-либо позиционные корректировки необходимы, MATLAB настраивает OuterPosition свойство.
Установка этого свойства не оказывает влияния, когда родительским контейнером является TiledChartLayout.
GetAccess | public |
SetAccess | public |
Dependent | true |
NonCopyable | true |
Units — Модули положения'normalized' (значение по умолчанию) | 'inches' | 'centimeters' | 'characters' | 'points' | 'pixels'Модули положения в виде значения из следующей таблицы. Чтобы сменить положение графика в определенных модулях, установите Units свойство прежде, чем задать Position свойство. Если вы задаете Units и Position свойства в одной команде (использующий пары "имя-значение"), убедиться задать Units перед Position.
Units | Описание |
|---|---|
'normalized' (значение по умолчанию) | Нормированный относительно родительского контейнера, который обычно является фигурой, панелью или вкладкой. Левый нижний угол контейнера сопоставляет с (0,0), и правый верхний угол сопоставляет с (1,1). |
'inches' | 'inches'. |
'centimeters' | 'centimeters'. |
'characters' | На основе стандартного шрифта графического корневого объекта:
|
'points' | Точки книгопечатания. Один пункт равен 1/72 дюйма. |
'pixels' | Расстояния в пикселях независимы от вашего системного разрешения по системам Макинтоша и Windows®:
В системах Linux® размер пикселя определяется вашим системным разрешением. |
GetAccess | public |
SetAccess | public |
Dependent | true |
NonCopyable | true |
Layout — Параметры макетаLayoutOptions массив (значение по умолчанию) | TiledChartLayoutOptionsПараметры макета в виде TiledChartLayoutOptions объект. Это свойство задает опции, когда экземпляр вашего графика является дочерним элементом мозаичного размещения графика. Если экземпляр не является дочерним элементом мозаичного размещения графика (например, это - дочерний элемент фигуры или панели), то это свойство пусто и не оказывает влияния. В противном случае можно расположить график в размещении путем установки Tile и TileSpan свойства на TiledChartLayoutOptions объект.
Например, этот код помещает объект диаграммы c в третью мозаику мозаичного размещения графика.
c.Layout.Tile = 3;
Чтобы заставить график охватить несколько мозаик, задайте TileSpan свойство как двухэлементный вектор. Например, этот график охватывает 2 строки и 3 столбцы мозаик.
c.Layout.TileSpan = [2 3];
Мозаичные размещения графика не поддержаны для осей, возвращенных getAxes метод. Вместо этого можно поместить экземпляр графика в мозаичное размещение графика.
GetAccess | public |
SetAccess | public |
Visible — Состояние видимости'on' (значение по умолчанию) | логическое значение включения - выключенияСостояние видимости в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.
'on' — Отобразите график.
'off' — Скройте график, не удаляя его. Все еще можно получить доступ к свойствам графика, когда он не отображается.
GetAccess | public |
SetAccess | public |
Dependent | true |
GetObservable | true |
SetObservable | true |
Parent — Родительский контейнерFigure объект (значение по умолчанию) | Panel возразите | Tab возразите | TiledChartLayout объектРодительский контейнер графика в виде FigureПанель, Tab, или TiledChartLayout объект.
GetAccess | public |
SetAccess | public |
Transient | true |
Dependent | true |
GetObservable | true |
SetObservable | true |
NonCopyable | true |
HandleVisibility — Видимость указателя на объект'on' (значение по умолчанию) | 'off'Видимость объекта диаграммы обрабатывает в его родительском списке дочерних элементов в виде одного из этих значений:
'on' — Указатель объекта диаграммы всегда отображается.
'off' — Указатель объекта диаграммы невидим в любом случае. Эта опция полезна для предотвращения непреднамеренных изменений в графике другой функцией. Чтобы временно скрыть указатель во время выполнения этой функции, установите HandleVisibility к 'off'.
'callback' — Указатель объекта диаграммы отображается из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки. Эта опция блокирует доступ к объекту в Командном окне, но это позволяет функциям обратного вызова получать доступ к нему.
Если объект не перечислен в Children свойство родительского объекта графика, затем функционирует, которые получают указатели на объект путем поиска иерархии объектов, или запрос свойств указателя не может возвратить его. Это включает getfindobjgcagcfgconewplotclaclf, и close.
Скрытые указатели на объекты все еще действительны. Установите корневой ShowHiddenHandles свойство к 'on' перечислять все указатели на объект, независимо от их HandleVisibility установка свойства.
GetAccess | public |
SetAccess | public |
Dependent | true |
GetObservable | true |
SetObservable | true |
Задайте класс под названием SmoothPlot это строит набор данных с помощью точечной синей линии со сглаживавшей версией линии.
Чтобы задать класс, создайте файл под названием SmoothPlot.m это содержит следующее определение класса с этими функциями:
XData и YData публичные свойства, которые хранят x-и данные y-координаты для исходной линии.
SmoothColor и SmoothWidth публичные свойства, которые управляют цветом и шириной ровной линии.
OriginalLine и SmoothLine частные prperties, которые хранят Line объекты для исходных и сглаживавших данных.
setup метод, который инициализирует OriginalLine и SmoothLine.
update метод, который обновляет график, когда пользователь изменяет значение свойства.
createSmoothData метод, который вычисляет сглаживавшую версию YData.
classdef SmoothPlot < matlab.graphics.chartcontainer.ChartContainer properties XData (1,:) double = NaN YData (1,:) double = NaN SmoothColor (1,3) double {mustBeGreaterThanOrEqual(SmoothColor,0),... mustBeLessThanOrEqual(SmoothColor,1)} = [0.9290 0.6940 0.1250] SmoothWidth (1,1) double = 2 end properties(Access = private,Transient,NonCopyable) OriginalLine (1,1) matlab.graphics.chart.primitive.Line SmoothLine (1,1) matlab.graphics.chart.primitive.Line end methods(Access = protected) function setup(obj) % Create the axes ax = getAxes(obj); % Create the original and smooth lines obj.OriginalLine = plot(ax,NaN,NaN,'LineStyle',':'); hold(ax,'on') obj.SmoothLine = plot(ax,NaN,NaN); hold(ax,'off') end function update(obj) % Update line data obj.OriginalLine.XData = obj.XData; obj.OriginalLine.YData = obj.YData; obj.SmoothLine.XData = obj.XData; obj.SmoothLine.YData = createSmoothData(obj); % Update line color and width obj.SmoothLine.Color = obj.SmoothColor; obj.SmoothLine.LineWidth = obj.SmoothWidth; end function sm = createSmoothData(obj) % Calculate smoothed data v = ones(1,10)*0.1; sm = conv(obj.YData,v,'same'); end end end
Затем создайте пару x и y векторы. Постройте x и y путем вызова SmoothPlot метод конструктора, который обеспечивается ChartContainer класс. Задайте 'XData' и 'YData' аргументы пары "имя-значение" и возвращают объект как c.
x = 1:1:100; y = 10*sin(x./5) + 8*sin(10.*x + 0.5); c = SmoothPlot('XData',x,'YData',y);

Используйте c изменить цвет ровной линии к красному.
c.SmoothColor = [1 0 0];

ChartContainer подклассы присваивают значения свойств после setup запуски методаПоведение изменяется в R2020a
Когда вы создаете экземпляр ChartContainer разделите на подклассы и передайте аргументы пары "имя-значение" свойства конструктору, значения свойств присвоены после setup запуски метода. В R2019b значения свойств присвоены перед setup запуски метода.
Если setup метод ваших ссылок класса значение свойства на объекте, можно обновить код любым из следующих способов:
Присвойте значение по умолчанию для свойства, когда вы зададите его.
Переместите код, который ссылается на свойство к update метод.
ActivePositionProperty не рекомендуетсяНе рекомендуемый запуск в R2020a
Запуск в R2020a, установка или получение ActivePositionProperty не рекомендуется. Используйте PositionConstraint свойство вместо этого.
Нет никаких планов удалить ActivePositionProperty в это время, но свойство больше не перечисляется, когда вы вызываете setполучение, или properties функции на объекте диаграммы.
Чтобы обновить ваш код, внесите эти изменения:
Замените все экземпляры ActivePositionProperty с PositionConstraint.
Замените все ссылки на 'position' опция с 'innerposition' опция.
matlab.graphics.chartcontainer.mixin.Colorbar | matlab.graphics.chartcontainer.mixin.Legend
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.