exponenta event banner

контур

Контурный график матрицы

Описание

пример

contour(Z) создает контурный график, содержащий изолинии матрицы Z, где Z содержит значения высоты на плоскости x-y. MATLAB ® автоматически выбирает горизонтали для отображения. Индексы столбцов и строк Z - координаты x и y в плоскости соответственно.

пример

contour(X,Y,Z) задает координаты x и y для значений в Z.

пример

contour(___,levels) определяет горизонтали, отображаемые в качестве последнего аргумента в любом из предыдущих синтаксисов. Определить levels как скалярное значение n для отображения горизонталей в n автоматически выбираемые уровни (высоты). Для построения горизонталей на определенных высотах укажите levels как вектор монотонно возрастающих значений. Для построения контуров на одной высоте (k), укажите levels как двухэлементный вектор строки [k k].

пример

contour(___,LineSpec) определяет стиль и цвет горизонталей.

пример

contour(___,Name,Value) задает дополнительные параметры для графика горизонталей с использованием одного или нескольких аргументов пары «имя-значение». Укажите параметры после всех других входных аргументов. Список свойств см. в разделе Свойства горизонталей.

contour(ax,___) отображает контурный график в целевых осях. Укажите оси в качестве первого аргумента в любом из предыдущих синтаксисов.

M = contour(___) возвращает матрицу контуров M, который содержит координаты (x, y) вершин на каждом уровне.

пример

[M,c] = contour(___) возвращает матрицу горизонталей и объект горизонталей c. Использовать c задание свойств после отображения графика горизонталей.

Примеры

свернуть все

Создание матриц X и Y, которые определяют сетку в плоскости x-y. Определение матрицы Z как высоты над этой сеткой. Затем постройте контуры Z.

x = linspace(-2*pi,2*pi);
y = linspace(0,4*pi);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(Y);
contour(X,Y,Z)

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

Определить Z как функция X и Y. В этом случае вызовите peaks функция для создания X, Y, и Z. Затем постройте график 20 контуров Z.

[X,Y,Z] = peaks;
contour(X,Y,Z,20)

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

Отображение контуров peaks функция на Z = 1.

[X,Y,Z] = peaks;
v = [1,1];
contour(X,Y,Z,v)

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

Создание контурного графика peaks и задайте стиль пунктирной линии.

[X,Y,Z] = peaks;
contour(X,Y,Z,'--')

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

Определить Z как функция двух переменных, X и Y. Затем создайте контурный график этой функции и отобразите метки, установив ShowText свойство для 'on'.

x = -2:0.2:2;
y = -2:0.2:3;
[X,Y] = meshgrid(x,y);
Z = X.*exp(-X.^2-Y.^2);
contour(X,Y,Z,'ShowText','on')

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

Создание контурного графика peaks функция. Сделать контурные линии толще, установив LineWidth свойство для 3.

Z = peaks;
[M,c] = contour(Z);
c.LineWidth = 3;

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

Вставка NaN значения везде, где имеются разрывы на поверхности. contour функция не рисует контурные линии в этих областях.

Определение матрицы Z в качестве выборки peaks функция. Заменить все значения в столбце 26 с NaN значения. Затем постройте график контуров измененного Z матрица.

Z = peaks;
Z(:,26) = NaN;
contour(Z)

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

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

свернуть все

x-координаты, заданная как матрица того же размера, что и Z, или как вектор с длиной n, где [m,n] = size(Z). Значение по умолчанию X - вектор (1:n).

Когда X является матрицей, значения должны строго увеличиваться или уменьшаться вдоль одного измерения и оставаться постоянными вдоль другого измерения. Размер, который изменяется, должен быть противоположен размеру, который изменяется в Y. Вы можете использовать meshgrid функция для создания X и Y матрицы.

Когда X является вектором, значения должны быть строго увеличены или уменьшены.

Пример: X = 1:10

Пример: X = [1 2 3; 1 2 3; 1 2 3]

Пример: [X,Y] = meshgrid(1:10)

XData имущества Contour объект сохраняет координаты X.

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

y-координаты, заданная как матрица того же размера, что и Z, или как вектор с длиной m, где [m,n] = size(Z). Значение по умолчанию Y - вектор (1:m).

Когда Y является матрицей, значения должны строго увеличиваться или уменьшаться вдоль одного измерения и оставаться постоянными вдоль другого измерения. Размер, который изменяется, должен быть противоположен размеру, который изменяется в X. Вы можете использовать meshgrid для создания X и Y матрицы.

Когда Y является вектором, значения должны быть строго увеличены или уменьшены.

Пример: Y = 1:10

Пример: Y = [1 1 1; 2 2 2; 3 3 3]

Пример: [X,Y] = meshgrid(1:10)

YData имущества Contour объект сохраняет координаты Y.

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

z-координаты, заданные как матрица. Эта матрица должна содержать не менее двух строк и двух столбцов, а также не менее двух различных значений.

Пример: Z = peaks(20)

ZData имущества Contour объект сохраняет координаты Z.

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

Уровни горизонталей, заданные как скалярное целое число или вектор. Этот аргумент используется для управления количеством и расположением горизонталей. Если уровни не указаны, contour функция выбирает уровни автоматически.

  • Чтобы рисовать контурные линии на n автоматически выбранных высотах, укажите уровни в качестве скалярного значения n.

  • Для построения горизонталей на определенных высотах укажите levels как вектор монотонно возрастающих значений.

  • Построение горизонталей на одной высоте k, указать levels как двухэлементный вектор строки [k k].

Пример: contour(peaks,10) рисует контурные линии на 10 автоматически выбранных высотах на peaks функция.

Пример: contour(peaks,[-4 0 4]) рисует контурные линии на 3 конкретных высотах на peaks функция: -4, 0, и 4.

Пример: contour(peaks,[3 3]) рисует горизонтали, чтобы показать, где высота peaks функция - 3.

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

Стиль и цвет линии, задаваемые как вектор символа или скаляр строки, содержащий символы стиля линии, параметры цвета или и то, и другое. Символы стилей линий перечислены в следующей таблице и могут отображаться в любом порядке. Маркеры, такие как 'o' игнорируются.

Нет необходимости указывать как стиль линии, так и цвет. Например, если опустить стиль линий и задать цвет, на графике будут показаны сплошные линии с использованием заданного цвета.

Стиль линииОписаниеРезультирующая линия
-Сплошная линия (по умолчанию)

--Пунктирная линия

:Пунктирная линия

-.Черточно-точечная линия

В этой таблице перечислены доступные параметры цвета.

ВыборОписаниеЭквивалентный триплет RGB
'red' или 'r'Красный[1 0 0]
'green' или 'g'Зеленый[0 1 0]
'blue' или 'b'Синий[0 0 1]
'yellow' или 'y'Желтый[1 1 0]
'magenta' или 'm'Пурпурный[1 0 1]
'cyan' или 'c'Голубой[0 1 1]
'white' или 'w'Белый[1 1 1]
'black' или 'k'Черный[0 0 0]

Целевые оси, указанные как Axes объект. Если оси не указаны, то contour строит графики в текущих осях.

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

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

Пример: contour(Z,'ShowText','on') отображает метки горизонталей.

Примечание

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

Метки горизонталей, указанные как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.

  • 'on' - отображение значений высоты вдоль горизонталей.

  • 'off' - Не маркировать контурные линии.

Ширина линии контура, заданная как положительное значение в точках. Одна точка равна 1/72 дюйма.

Шаг метки вдоль горизонталей, заданный как скалярное значение в точках, где одна точка равна 1/72 дюйма. Это свойство используется для управления количеством меток горизонталей вдоль горизонталей. При меньших значениях создается больше меток.

Необходимо установить ShowText свойство для 'on' для LabelSpacing свойство, чтобы иметь эффект.

Если вы используете clabel для отображения меток, затем LabelSpacing свойство не имеет эффекта, и при печати отображается одна метка на строку.

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

свернуть все

Горизонтальная матрица, возвращаемая в виде двухстрочной матрицы. Эта матрица содержит уровни контуров (высоты) и координаты вершин на каждом уровне. Данные расположены последовательно в n наборах столбцов для n контурных линий:

  • Первый столбец в каждом наборе содержит уровень контура и число вершин на этом уровне. Верхнее число является уровнем контура, а нижнее - числом вершин.

  • Последующие столбцы в наборе являются координатами (x, y) вершин. Каждый столбец представляет упорядоченную пару. Верхнее число является координатой X, а нижнее - координатой Y.

Например, вот первые несколько столбцов контурной матрицы M = contour(peaks(3)):

ContourMatrix имущества Contour объект сохраняет матрицу горизонталей.

Contour объект. Этот объект используется для задания свойств после отображения графика горизонталей.

Расширенные возможности

Представлен до R2006a