Почти все свойства графического объекта имеют предопределенные значения. Предопределенные значения берутся из двух возможных источников:
Значения по умолчанию, заданные для предка объекта
Заводские значения, заданные в корне иерархии графических объектов
Пользователи могут создавать значения по умолчанию для свойства объекта, которые имеют приоритет над значениями, заданными фабрикой. Объекты используют значения по умолчанию, когда:
Создан в иерархии, где предок определяет значение по умолчанию
Преобразован в иерархию, где предок задает значение по умолчанию
Задайте значение свойства по умолчанию с помощью вектора символов с этими тремя частями:
'default' ObjectType PropertyName
Слово default
Тип объекта (для примера, Line
)
Имя свойства (для примера, LineWidth
)
Вектор символов, задающий линию по умолчанию LineWidth
будет:
'defaultLineLineWidth'
Используйте этот вектор символов, чтобы задать значение по умолчанию. Например, чтобы задать значение по умолчанию 2 точки для линии LineWidth
свойство, используйте оператор:
set(groot,'defaultLineLineWidth',2)
Вектор символов defaultLineLineWidth
определяет свойство как свойство линии. Чтобы задать цвет рисунка, используйте defaultFigureColor
.
set(groot,'defaultFigureColor','b')
В целом, вы должны задать значение по умолчанию на корневом уровне, чтобы все последующие функции построения графика использовали эти значения по умолчанию. Задайте корень в set
и get
операторы, использующие groot
функция, которая возвращает указатель в корень.
Значения свойств по умолчанию можно задать на трех уровнях:
Корень - значения применяются к объектам, созданным в текущем MATLAB® сеанс
Фигура - используется для значений по умолчанию, применяемых к дочерним элементам рисунка, определяющим значения по умолчанию.
Оси - использование для значений по умолчанию, применяемых только к дочерним элементам осей, определяющих значения по умолчанию и только при использовании низкоуровневых функций (light
, line
, patch
, rectangle
, surface
, text
, и низкоуровневой формы image
).
Для примера задайте цвет рисунка по умолчанию только на корневом уровне.
set(groot,'defaultFigureColor','b')
Использовать get
чтобы определить, какие значения по умолчанию в настоящее время заданы на любом заданном уровне объекта:
get(groot,'default')
возвращает все значения по умолчанию, установленные в текущем сеансе работы с MATLAB.
Задание значения свойства 'default'
устанавливает свойство на первое встреченное значение по умолчанию, заданное для этого свойства. Для примера эти операторы результата на зеленой поверхности EdgeColor
:
set(groot,'defaultSurfaceEdgeColor','k') h = surface(peaks); set(gcf,'defaultSurfaceEdgeColor','g') set(h,'EdgeColor','default')
Потому что значение по умолчанию для поверхностных EdgeColor
существует на уровне рисунка, MATLAB сначала встречается с этим значением и использует его вместо значения по умолчанию EdgeColor
задано в корне.
Задание значения свойства 'remove'
избавляется от пользовательских значений по умолчанию. Оператор
set(groot,'defaultSurfaceEdgeColor','remove')
удаляет определение поверхности по умолчанию EdgeColor
от корня.
Задание значения свойства 'factory'
устанавливает свойство на заданное значением по умолчанию. Для примера эти операторы устанавливают EdgeColor
поверхностных h
к черному (его заводская настройка), независимо от того, какие значения по умолчанию вы определили:
set(gcf,'defaultSurfaceEdgeColor','g') h = surface(peaks); set(h,'EdgeColor','factory')
Можно перечислить заводские значения:
get(groot,'factory')
- Список всех определенных фабрикой значений свойств для всех графических объектов
get (groot, '
- Список всех определенных заводом значений свойств для определенного объектаfactory ObjectType
')
get (groot, '
- Список заданных фабрикой значений для заданного свойства.factory ObjectTypePropertyName
')
Установка значения свойства на default
, remove
, или factory
создает эффекты, описанные в предыдущих разделах. Чтобы задать свойство одному из этих слов (для примера - тексту String
набор свойств установлен на слово default
), предшествуйте слову с символом обратной косой черты:
h = text('String','\default');