contourslice

Чертите контуры в плоскостях разбиения объема

Синтаксис

contourslice(X,Y,Z,V,xslice,yslice,zslice)
contourslice(V,xslice,yslice,zslice)
contourslice(___,num)
contourslice(___,lvls)
contourslice(___,method)
contourslice(ax,___)
s = contourslice(___)

Описание

пример

contourslice(X,Y,Z,V,xslice,yslice,zslice) чертит контуры в срезах для объемных данных V, где V определяет цвета контура. Задайте X, Y и Z как координатные данные. Задайте xslice, yslice и zslice как местоположения среза с помощью одной из следующих форм:

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

  • Чтобы чертить один срез вдоль поверхности, задайте все аргументы среза как матрицы, которые задают поверхность.

contourslice(V,xslice,yslice,zslice) использует координатные данные по умолчанию для V. (x, y, z) местоположение для каждого элемента в V основано на столбце, строке и индексе страницы, соответственно.

пример

contourslice(___,num) задает количество линий контура, чтобы чертить на срез. Используйте эту опцию с любым из входных параметров от предыдущих синтаксисов.

contourslice(___,lvls) задает значения, в которых можно чертить линии контура в каждом срезе.

contourslice(___,method) задает метод интерполяции, где method может быть 'linear', 'cubic' или 'nearest'.

contourslice(ax,___) графики в заданные оси, вместо текущей системы координат (gca).

s = contourslice(___) возвращает созданные объекты Patch.

Примеры

свернуть все

Создайте одну плоскость разбиения через объемные данные и чертите контуры значений данных.

Создайте матрицы X, Y, Z и V от набора данных flow. Чертите контуры V в плоскости разбиения где z = 0.

[X,Y,Z,V] = flow;
zslice = 0;
contourslice(X,Y,Z,V,[],[],zslice)
grid on

Создайте несколько плоскостей разбиения через объемные данные. Чертите контуры значений данных в каждой из плоскостей разбиения. Позвольте MATLAB выбрать уровни контура.

Создайте V как массив данных об объеме, заданных v=xe-x2-y2-z2. Чертите контуры в трех плоскостях разбиения, которые являются ортогональными к оси X в значениях -1.2, 0.8 и 2. Не создавайте плоскости разбиения, которые являются ортогональными к оси Y или оси z путем определения пустых массивов. Измените представление осей на 3-D представление и добавьте линии сетки.

[X,Y,Z] = meshgrid(-2:.2:2);
V = X.*exp(-X.^2-Y.^2-Z.^2);

xslice = [-1.2,0.8,2];   
yslice = [];
zslice = [];
contourslice(X,Y,Z,V,xslice,yslice,zslice)
view(3)
grid on

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

Чертите контуры в трех плоскостях разбиения, которые являются ортогональными к оси X в значениях -1.2, 0.8 и 2. Чертите контуры для данных об объеме между значениями -0.2 и 0.4, расположил с интервалами каждый 0.01. Добавьте шкалу палитры, чтобы видеть, как значения данных сопоставляют с цветами контура. Кроме того, измените представление осей на 3-D представление и добавьте линии сетки.

[X,Y,Z] = meshgrid(-2:.2:2);
V = X.*exp(-X.^2-Y.^2-Z.^2);
xslice = [-1.2,0.8,2];   
lvls = -0.2:0.01:0.4;

contourslice(X,Y,Z,V,xslice,[],[],lvls)
colorbar
view(3)
grid on

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

Создайте V как массив данных об объеме, заданных v=xe-x2-y2-z2. Затем покажите срез данных об объеме вдоль поверхности, заданной z=x2-y2. Чертите 20 контуров вдоль поверхности. Измените представление осей на 3-D представление и добавьте линии сетки.

[X,Y,Z] = meshgrid(-5:0.2:5);
V = X.*exp(-X.^2-Y.^2-Z.^2);

[xsurf,ysurf] = meshgrid(-2:0.2:2);
zsurf = xsurf.^2-ysurf.^2;
contourslice(X,Y,Z,V,xsurf,ysurf,zsurf,20)
view(3)
grid on

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

свернуть все

x- данные о координате оси, заданные как вектор или трехмерный массив тот же размер как V. Если вы задаете трехмерный массив, это должно быть монотонным и ортогонально расположенным с интервалами, как будто произведенный meshgrid функционируют.

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

y- данные о координате оси, заданные как вектор или трехмерный массив тот же размер как V. Если вы задаете трехмерный массив, это должно быть монотонным и ортогонально расположенным с интервалами, как будто произведенный meshgrid функционируют.

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

z- данные о координате оси, заданные как вектор или трехмерный массив тот же размер как V. Если вы задаете трехмерный массив, это должно быть монотонным и ортогонально расположенным с интервалами, как будто произведенный meshgrid функционируют.

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

Данные об объеме, заданные как трехмерный массив.

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

x- значения среза оси, заданные в одной из следующих форм:

  • Скаляр — Чертит одну плоскость разбиения, ортогональную к x - ось в заданном местоположении.

  • Вектор — Чертит несколько плоскостей разбиения, ортогональных к x - ось в заданных местоположениях.

  • [] — Не чертите плоскости разбиения.

  • Матрица — Чертит срез вдоль поверхности вместо плоскости. Если вы используете эту опцию, то yslice и zslice также должны быть матрицами, которые одного размера.

Пример: [2 4] чертит плоскости разбиения, ортогональные к оси X в значениях 2 и 4.

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

y- значения среза оси, заданные в одной из следующих форм:

  • Скаляр — Чертит одну плоскость разбиения, ортогональную к y - ось в заданном местоположении.

  • Вектор — Чертит несколько плоскостей разбиения, ортогональных к y - ось в заданных местоположениях.

  • [] — Не чертите плоскости разбиения.

  • Матрица — Чертит срез вдоль поверхности вместо плоскости. Если вы используете эту опцию, то xslice и zslice также должны быть матрицами, которые одного размера.

Пример: [2 4] чертит плоскости разбиения, ортогональные к оси Y в значениях 2 и 4.

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

z- значения среза оси, заданные в одной из следующих форм:

  • Скаляр — Чертит одну плоскость разбиения, ортогональную к z - ось в заданном местоположении.

  • Вектор — Чертит несколько плоскостей разбиения, ортогональных к z - ось в заданных местоположениях.

  • [] — Не чертите плоскости разбиения.

  • Матрица — Чертит срез вдоль поверхности вместо плоскости. Если вы используете эту опцию, то xslice и yslice также должны быть матрицами, которые одного размера.

Пример: [2 4] чертит плоскости разбиения, ортогональные к оси z в значениях 2 и 4.

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

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

Пример: 4 чертит четыре линии контура в каждом срезе.

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

Уровни линии контура, заданные как вектор. Если вы хотите чертить одну линию контура на срез на конкретном уровне, то задайте вектор в форме [lvl lvl].

Пример: [1 3 5] чертит линии контура на уровнях 1, 3, и 5 в каждом срезе.

Пример: [4 4] чертит одну линию контура на уровне 4 в каждом срезе.

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

Метод интерполяции, заданный как одно из этих значений:

  • 'linear' — Линейная интерполяция значений в соседних узлах решетки в каждой соответствующей размерности. Это значение является значением по умолчанию, когда срез является поверхностью.

  • 'cubic' — Кубичная интерполяция значений в соседних узлах решетки в каждой соответствующей размерности.

  • самый близкий Самое близкое значение узла решетки. Это значение является значением по умолчанию, когда срезы являются плоскостями.

Целевые оси, заданные как объект Axes. Если вы не задаете оси, то contourslice строит в текущую систему координат.

Алгоритмы

Функция contourslice не очищает существующие графики перед графическим выводом.

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

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

| | | |

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