xline

Вертикальная линия с постоянным значением X

Описание

пример

xline(x) создает вертикальную линию в одной или нескольких координатах X в текущей системе координат. Для примера, xline(2) создает линию в x=2.

пример

xline(x,LineSpec) задает стиль линии, цвет линии или и то, и другое. Для примера, xline([12 20 33],'--b') создает три штриховые синие линии.

пример

xline(x,LineSpec,labels) добавляет метки к линиям.

пример

xline(___,Name,Value) задает свойства константы линии с помощью одного или нескольких аргументов пары "имя-значение". Список свойств см. в разделе Свойства КонстантаЛиния. Задайте пары "имя-значение" после всех других входных параметров.

пример

xline(ax,___) создает линии в заданных осях вместо текущей системы координат.

пример

xl = xline(___) возвращает ConstantLine объект или массив ConstantLine объекты. Использование xl для изменения или запроса свойств линии после ее создания.

Примеры

свернуть все

Создайте вертикальную линию при x = 3.

xline(3);

Figure contains an axes. The axes contains an object of type constantline.

Чтобы создать линию с меткой, необходимо также задать стиль линии. Стиль линии по умолчанию является сплошной линией, '-'.

x = linspace(0,6,100);
y = exp(x);
plot(x,y)
xline(4.5,'-',{'Acceptable','Limit'});

Figure contains an axes. The axes contains 2 objects of type line, constantline.

Создайте вектор нормально распределенных случайных чисел и отобразите их в гистограмме. Затем создайте три вертикальные линии с метками по среднему значению, на одно стандартное отклонение ниже среднего и на одно стандартное отклонение выше среднего.

data = 5 * randn(1,500) + 20;
histogram(data,'FaceAlpha',0.1,'EdgeAlpha',0.1);
m = mean(data);
s = std(data);
xline([m-s m m+s],'-',{'-1 Standard Dev.','Average','+1 Standard Dev.'})

Figure contains an axes. The axes contains 4 objects of type histogram, constantline.

Создайте красную штриховую линию при x = 5.

xline(5,'--r');

Figure contains an axes. The axes contains an object of type constantline.

Создайте вертикальную штрих-точку линии с именем как метки, так и отображения легенды.

y = [3187 2693 1771 1826 1958 3222 1645];
barh(y,'DisplayName','Daily Sales')
xl = xline(2328,'-.','Average','DisplayName','Average Sales');

Figure contains an axes. The axes contains 2 objects of type bar, constantline. These objects represent Daily Sales, Average Sales.

Отрегулируйте вертикальное и горизонтальное выравнивание метки, а затем отобразите легенду.

xl.LabelVerticalAlignment = 'middle';
xl.LabelHorizontalAlignment = 'center';
legend('show');

Figure contains an axes. The axes contains 2 objects of type bar, constantline. These objects represent Daily Sales, Average Sales.

Вызовите tiledlayout функция для создания мозаичного графика размещения 2 на 1. Вызовите nexttile функция для создания объектов осей ax1 и ax2. Затем постройте график в каждой из осей. Добавить пунктирную вертикальную линию и метку к каждому графику путем передачи осей в xline функция.

tiledlayout(2,1)
ax1 =nexttile;
x = linspace(0,10,200);
y1 = cos(x); 
plot(ax1,x,y1)

ax2 = nexttile;
y2 = sin(x); 
plot(ax2,x,y2)

xline(ax1,pi/2,':','cos(\pi/2)=0');
xline(ax2,pi,':','sin(\pi)=0');

Figure contains 2 axes. Axes 1 contains 2 objects of type line, constantline. Axes 2 contains 2 objects of type line, constantline.

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

свернуть все

x -координаты, заданные как скаляр или вектор, содержащий числовые, категориальные, datetime или значения длительности. Тип данных x должен совпадать с типом данных оси X.

Пример: xline(10) отображает линию в x=10.

Пример: xline([13 20 33]) отображает линии в x=13, x=20, и x=33.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration

Стиль линии, цвет и маркер задается как вектор символов или строка , содержащая символы. Символы могут появиться в любом порядке. Вам не нужно задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы опускаете стиль линии и задаете маркер, то на графике отображается только маркер и нет линии.

Пример: '--or' - красная штриховая линия с маркерами кругов

Стиль линииОписание
-Сплошная линия
--Штриховая линия
:Пунктирная линия
-.Штрих-точка линия
МаркерОписание
'o'Круг
'+'Плюс знак
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
's'Квадрат
'd'Алмаз
'^'Направленный вверх треугольник
'v'Нисходящий треугольник
'>'Треугольник , указывающий вправо
'<'Треугольник , указывающий влево
'p'Пентаграмма
'h'Hexagram
ЦветОписание

y

желтый

m

пурпурный

c

голубой

r

красный

g

зеленый

b

синий

w

белый

k

черный

Целевые оси, заданные как Axes объект. Используйте этот аргумент, если хотите xline чтобы построить график в осях, отличных от текущей системы координат.

Метки к линиям, заданные как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.

Создайте метку для одной линии

Задайте вектор символов или строковый скаляр, чтобы отобразить одну линию текста. Чтобы отобразить несколько линии текста, задайте массив ячеек из векторов символов или строковые массивы.

ПредставлениеКак задать labelsПример
Одна линия текстаЗадайте вектор символов или строковый скаляр.

xline(12,'-','Sample')

A vertical line in an axes with a label.

Многострочный текстЗадайте массив ячеек из векторов символов или строковых массивов. Каждый элемент массива является другой линией текста.
xline(12,'-',{'Sample','x=12'})

A vertical line in an axes with a label that has two lines of text.

Создание меток для нескольких линий

Задайте вектор символов или строковый скаляр, чтобы отобразить ту же метку рядом со всеми линиями. Задайте массив ячеек из векторов символов или строковые массивы, чтобы отобразить различные метки для каждой линии.

ПредставлениеКак задать labelsПример
Одна общая текстовая меткаЗадайте вектор символов или строковый скаляр.

xline([13 20 33],'-','Sample')

Three vertical lines in an axes with matching labels.

Различные метки для каждой линииЗадайте массив ячеек из векторов символов или строковых массивов. Каждый элемент массива является меткой для другой линии. Количество элементов в labels массив должен совпадать с длиной x.
label = {'Sample 1','Sample 2','Sample 3'};
xline([13 20 33],'-',label)

Three vertical lines in an axes with different labels.

Различные метки с некоторыми многострочными меткамиСоздайте массив ячеек из векторов символов или строковые массивы. Используйте sprintf функция для вставки символов новой строки ('\n') в тексте.
label = {'Sample 1',sprintf('Sample 2\nx=20'),'Sample 3'};
xline([13 20 33],'-',label)

Three vertical lines in an axes with different labels. The label for the second line has two lines of text.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: xline(5,'LabelVerticalAlignment','middle') задает вертикальное выравнивание метки следующим 'middle'.

Примечание

Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства ConstantLine.

Цвет линии, заданный как триплет RGB, шестнадцатеричный код цвета, название цвета или краткое имя.

Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7].

  • Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 на F. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' являются эквивалентными.

Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB® использует на многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешность
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: 'g'

Пример: [0.6 0.2 0.5]

Пример: '#D2F9A7'

Ширина линии, заданная в виде положительного значения в точках.

Метка легенды, заданная как вектор символов или строковый скаляр. Легенда не отображается, пока вы не вызовете legend команда. Если вы не задаете текст, то legend устанавливает метку с помощью формы 'dataN'.

Горизонтальное выравнивание метки относительно линии, заданное как один из опций в таблице.

ОпцияОписаниеПример
'right'Правая сторона линии.

'left'Левая сторона линии.

'center'Центр линии. Метка сегментирует линию.

Вертикальное выравнивание метки относительно линии, заданное как один из опций в таблице.

ОпцияОписаниеПример
'top'Верхняя часть линии

'middle'Середина линии

'bottom'Нижняя часть линии

Ориентация метки, заданная как 'aligned' или 'horizontal'. Примеры показаны в таблице.

ОриентацияОписаниеПример
'aligned'Метка имеет ту же ориентацию, что и линия.

'horizontal'Метка горизонтальна, независимо от ориентации линии.

Алгоритмы

На 3-D виде осей постоянная линия появляется в плоскости x-y в середине пределов оси Z. Если оси повернуты, то постоянная линия вращается соответственно.

См. также

Функции

Свойства

Введенный в R2018b
Для просмотра документации необходимо авторизоваться на сайте