Main Content

contourslice

볼륨 슬라이스 평면에 등고선 그리기

  • Draw contours in volume slice planes

설명

예제

contourslice(X,Y,Z,V,xslice,yslice,zslice) 는 볼륨 데이터 V에 대한 슬라이스에 등고선을 그립니다. 여기서 V에 따라 등고선 색이 결정됩니다. X, Y, Z를 좌표 데이터로 지정합니다. 다음 형식 중 하나를 사용하여 xslice, yslice, zslice를 슬라이스 위치로 지정합니다.

  • 특정 축에 직교하는 하나 이상의 슬라이스 평면을 그리려면 슬라이스 인수를 스칼라 또는 벡터로 지정하십시오.

  • 곡면을 따라 단일 슬라이스를 그리려면 모든 슬라이스 인수를 곡면을 정의하는 행렬로 지정하십시오.

contourslice(V,xslice,yslice,zslice)V에 대한 디폴트 좌표 데이터를 사용합니다. V의 각 요소에 대한 (x,y,z) 위치는 각각 열, 행 및 페이지 인덱스를 기반으로 합니다.

예제

contourslice(___,num) 은 슬라이스당 그리려는 등고선의 개수를 지정합니다. 위에 열거된 구문에 나와 있는 입력 인수를 이 옵션과 함께 사용하십시오.

contourslice(___,lvls) 는 각 슬라이스 내에 등고선을 그릴 위치의 값을 지정합니다.

contourslice(___,method) 는 보간 방법을 지정합니다. 여기서 method'linear', 'cubic' 또는 'nearest'일 수 있습니다.

contourslice(ax,___)는 현재 좌표축(gca) 대신 지정된 좌표축에 플로팅합니다.

s = contourslice(___)는 생성된 Patch 객체를 반환합니다.

예제

모두 축소

볼륨 데이터를 자르는 단일 슬라이스 평면을 만들고 데이터 값의 등고선을 그립니다.

flow 데이터 세트로부터 행렬 X, Y, Z, V를 만듭니다. z = 0인 슬라이스 평면에 V의 등고선을 그립니다.

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

Figure contains an axes object. The axes object contains 41 objects of type patch.

볼륨 데이터를 자르는 여러 개의 슬라이스 평면을 만듭니다. 각 슬라이스 평면에 데이터 값의 등고선을 그립니다. 등고선 레벨은 MATLAB에서 자동으로 선택하도록 둡니다.

Vv=xe-x2-y2-z2에 의해 정의된 볼륨 데이터로 구성된 배열로 만듭니다. 값이 -1.2, 0.82인 위치에서 x축에 직교하는 세 개의 슬라이스 평면에 등고선을 그립니다. 빈 배열을 지정하여 y축 또는 z축에 직교하는 슬라이스 평면을 만들지 마십시오. 좌표축 보기를 3차원 보기로 변경하고 그리드 선을 추가합니다.

[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

Figure contains an axes object. The axes object contains 20 objects of type patch.

볼륨 데이터를 자르는 여러 개의 슬라이스 평면을 만듭니다. 각 슬라이스 평면에 데이터 값의 등고선을 그립니다. 등고선을 그릴 레벨을 지정합니다. 그런 다음 컬러바를 추가합니다.

값이 -1.2, 0.82인 위치에서 x축에 직교하는 세 개의 슬라이스 평면에 등고선을 그립니다. 값이 -0.20.4 사이인 볼륨 데이터에 대한 등고선을 0.01 간격마다 그립니다. 컬러바를 추가하여 데이터 값이 등고선 색에 어떻게 매핑되는지 확인합니다. 또한, 좌표축 보기를 3차원 보기로 변경하고 그리드 선을 추가합니다.

[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

Figure contains an axes object. The axes object contains 63 objects of type patch.

볼륨 데이터를 자르는 곡면 슬라이스를 만들고 볼륨 데이터의 곡면을 따라 등고선을 그립니다. 그릴 등고선 레벨의 개수를 지정합니다.

Vv=xe-x2-y2-z2에 의해 정의된 볼륨 데이터로 구성된 배열로 만듭니다. 그런 다음 z=x2-y2에 의해 정의된 곡면을 따라 볼륨 데이터의 슬라이스를 표시합니다. 곡면을 따라 등고선 20개를 그립니다. 좌표축 보기를 3차원 보기로 변경하고 그리드 선을 추가합니다.

[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

Figure contains an axes object. The axes object contains 20 objects of type patch.

입력 인수

모두 축소

x축 좌표 데이터로, V와 같은 크기의 벡터 또는 3차원 배열로 지정됩니다. 3차원 배열을 지정하는 경우, 이 배열은 meshgrid 함수로 생성된 것처럼 단조적이고 직교 관계에 있어야 합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

y축 좌표 데이터로, V와 같은 크기의 벡터 또는 3차원 배열로 지정됩니다. 3차원 배열을 지정하는 경우, 이 배열은 meshgrid 함수로 생성된 것처럼 단조적이고 직교 관계에 있어야 합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

z축 좌표 데이터로, V와 같은 크기의 벡터 또는 3차원 배열로 지정됩니다. 3차원 배열을 지정하는 경우, 이 배열은 meshgrid 함수로 생성된 것처럼 단조적이고 직교 관계에 있어야 합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

볼륨 데이터로, 3차원 배열로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

x축 슬라이스 값으로, 다음 형식 중 하나로 지정됩니다.

  • 스칼라 — 지정된 위치에서 x축에 직교하는 하나의 슬라이스 평면을 그립니다.

  • 벡터 — 지정된 위치에서 x축에 직교하는 여러 개의 슬라이스 평면을 그립니다.

  • [] — 슬라이스 평면을 그리지 않습니다.

  • 행렬 — 평면 대신 곡면을 따라 슬라이스를 그립니다. 이 옵션을 사용할 경우 yslicezslice도 크기가 같은 행렬이어야 합니다.

예: [2 4]는 값이 2와 4인 위치에서 x축에 직교하는 슬라이스 평면을 그립니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

y축 슬라이스 값으로, 다음 형식 중 하나로 지정됩니다.

  • 스칼라 — 지정된 위치에서 y축에 직교하는 하나의 슬라이스 평면을 그립니다.

  • 벡터 — 지정된 위치에서 y축에 직교하는 여러 개의 슬라이스 평면을 그립니다.

  • [] — 슬라이스 평면을 그리지 않습니다.

  • 행렬 — 평면 대신 곡면을 따라 슬라이스를 그립니다. 이 옵션을 사용할 경우 xslicezslice도 크기가 같은 행렬이어야 합니다.

예: [2 4]는 값이 2와 4인 위치에서 y축에 직교하는 슬라이스 평면을 그립니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

z축 슬라이스 값으로, 다음 형식 중 하나로 지정됩니다.

  • 스칼라 — 지정된 위치에서 z축에 직교하는 하나의 슬라이스 평면을 그립니다.

  • 벡터 — 지정된 위치에서 z축에 직교하는 여러 개의 슬라이스 평면을 그립니다.

  • [] — 슬라이스 평면을 그리지 않습니다.

  • 행렬 — 평면 대신 곡면을 따라 슬라이스를 그립니다. 이 옵션을 사용할 경우 xsliceyslice도 크기가 같은 행렬이어야 합니다.

예: [2 4]는 값이 2와 4인 위치에서 z축에 직교하는 슬라이스 평면을 그립니다.

데이터형: 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' — 각 차원의 인접 그리드 점에서 값이 3차 보간됩니다.

  • 'nearest' — 가장 근접한 그리드 점 값입니다. 이 값은 슬라이스가 평면일 때 디폴트 값입니다.

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않을 경우 contourslice는 현재 좌표축에 플로팅됩니다.

알고리즘

contourslice 함수는 플로팅하기 전에 기존 플롯을 지우지 않습니다.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

| | | |