slice

Плоскости разбиения объема

Описание

пример

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

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

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

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

пример

slice(___,method) задает метод интерполяции, где method может быть 'linear' (значение по умолчанию), 'cubic', или 'nearest'. Используйте эту опцию с любым из входных параметров в предыдущих синтаксисах.

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

s = slice(___) возвращает Surface объекты создаются. slice возвращает один Surface объект для каждого среза.

Примеры

свернуть все

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

Создайте плоскости разбиения через объем, заданный v=xe-x2-y2-z2, где x, y, и z лежат в диапазоне от [-2,2]. Создайте плоскости разбиения, ортогональные к оси X в значениях -1.2, 0.8, и 2 и ортогональный к оси z в значении 0. Не создавайте плоскости разбиения, которые являются ортогональными к оси Y путем определения пустого массива.

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

xslice = [-1.2,0.8,2];   
yslice = [];
zslice = 0;
slice(X,Y,Z,V,xslice,yslice,zslice)

Figure contains an axes. The axes contains 4 objects of type surface.

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

Создайте массив объема V как объем, заданный v=xe-x2-y2-z2, где x, y, и z лежат в диапазоне от [-5,5]. Затем покажите срез данных об объеме вдоль поверхности, заданной z=x2-y2.

[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;
slice(X,Y,Z,V,xsurf,ysurf,zsurf)

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

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

Создайте плоскость разбиения, ортогональную к оси X в значении 0.8. Поскольку данные об объеме не заданы для x значений 0,8, slice функция интерполирует соседние значения. Чтобы использовать самое близкое значение точки данных, задайте метод интерполяции как 'nearest'.

[X,Y,Z] = meshgrid(-2:2);
V = X.*exp(-X.^2-Y.^2-Z.^2);
xslice = 0.8;   
yslice = [];
zslice = [];
slice(X,Y,Z,V,xslice,yslice,zslice,'nearest')

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

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

свернуть все

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

Типы данных: single | double

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

Типы данных: single | double

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

Типы данных: single | double

Данные об объеме в виде трехмерного массива.

Типы данных: single | double

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

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

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

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

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

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

Типы данных: single | double

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

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

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

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

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

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

Типы данных: single | double

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

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

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

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

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

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

Типы данных: single | double

Метод интерполяции в виде одного из этих значений:

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

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

  • 'nearest' — Самое близкое значение узла решетки

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

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

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

| | | | (Image Processing Toolbox)

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