contour

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

Описание

пример

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 значения везде, где есть разрывы на поверхности. The 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 -cordinates, заданная в виде матрицы того же размера, что и 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)

The XData свойство Contour объект сохраняет x -cordinates.

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

y -cordinates, заданная в виде матрицы того же размера, что и 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)

The YData свойство Contour объект сохраняет y -cordinates.

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

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

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

The ZData свойство Contour объект сохраняет z -cordinates.

Типы данных: 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. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

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

  • 'off' - Не помечайте контурные линии.

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

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

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

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

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

свернуть все

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

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

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

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

The ContourMatrix свойство Contour объект хранит контурную матрицу.

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

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

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