xline

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

Описание

пример

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

пример

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

пример

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

пример

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

пример

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'Гексаграмма
ЦветОписание

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 Properties.

Цвет линии в виде триплета 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 команда. Если вы не задаете текст, то legend устанавливает метку с помощью формы 'dataN'.

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

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

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

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

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

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

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

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

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

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

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

Алгоритмы

В 3-D представлении осей постоянная линия появляется в x-y плоскости в средней точке пределов оси z. Если оси вращаются, то постоянная линия вращается соответственно.

Смотрите также

Функции

Свойства

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