Main Content

ribbon

  • Ribbon plot

설명

예제

ribbon(Z)Z의 열을 균일한 너비의 3차원 띠로 플로팅합니다. 여기서 y 좌표의 범위는 1에서 Z의 행 개수까지입니다. 띠는 x축 상의 단위 구간을 중심으로 나란히 표시됩니다.

예제

ribbon(Y,Z)Y로 지정된 위치에 3차원 띠를 플로팅합니다.

예제

ribbon(Y,Z,width)는 띠 너비를 지정합니다.

ribbon(ax,___)는 현재 좌표축(gca) 대신 ax로 지정된 좌표축에 플로팅됩니다. ax 옵션은 위에 열거된 구문의 입력 인수 조합보다 먼저 나올 수 있습니다.

예제

s = ribbon(___)Surface 객체(띠 하나당 하나의 객체)로 구성된 벡터를 반환합니다. 플롯을 생성한 후에 속성을 수정하려면 s를 사용하십시오. 속성 목록은 Surface 속성를 참조하십시오.

예제

모두 축소

5개의 띠가 점점 올라가는 높이에 놓인 플롯을 만듭니다. 먼저 띠 높이에 대응하는 요소를 갖는 5×5 행렬을 만듭니다.

Z = repmat(1:5,4,1)
Z = 4×5

     1     2     3     4     5
     1     2     3     4     5
     1     2     3     4     5
     1     2     3     4     5

Z의 각 열이 하나의 띠로 표현되며, Z의 열 번호에 대응하는 상수 x 좌표와 행 번호에 대응하는 y 좌표에 플로팅됩니다.

ribbon(Z)

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

magic 함수를 사용하여 5×5 행렬을 만듭니다.

Z = magic(5)
Z = 5×5

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

행렬의 띠 플롯을 만들고 각 띠가 0을 중심으로 하도록 y 좌표를 지정합니다.

Y = [-2 -1 0 1 2];
ribbon(Y,Z);

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

세 개의 띠를 y축 상의 서로 다른 위치에 플로팅합니다. 띠의 y 좌표를 행렬 Y로 지정하고, 이 행렬과 동일한 크기의 띠 높이 행렬 Z를 지정합니다. Y의 열은 각각 하나의 띠에 대응됩니다.

Y = [1 2 3;
     2 3 4;
     3 4 5;
     4 5 6];
Z = Y;
ribbon(Y,Z)

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

띠 플롯을 만들고 사용할 수 있는 총 공간의 30%로 각 띠의 너비를 설정합니다.

Z = magic(5);
Y = [-2 -1 0 1 2];
ribbon(Y,Z,0.3)

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

띠 플롯을 만들고 출력 인수를 지정합니다. 출력값은 다섯 개의 Surface 객체로 구성된 벡터입니다. 여기서 각 객체는 하나의 띠에 대응됩니다.

Z = magic(5);
Y = [-2 -1 0 1 2];
s = ribbon(Y,Z)

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

s = 
  5x1 Surface array:

  Surface
  Surface
  Surface
  Surface
  Surface

첫 번째 띠에 해당하는 Surface 객체의 EdgeColor 속성과 LineWidth 속성을 변경하여 띠를 강조 표시합니다.

s(1).EdgeColor = "yellow";
s(1).LineWidth = 3;

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

30개 띠의 플롯을 만들고 컬러바를 표시합니다.

t = linspace(0,2*pi,30);
x = sin(t)';
y = cos(t);
ribbon(x*y)
cbar = colorbar;
cbar.Label.String= "Ribbon Number";

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

colormap 함수를 사용하여 띠 색을 변경합니다. ribbon은 띠의 x 좌표를 컬러맵의 색에 선형적으로 매핑합니다.

colormap(turbo)

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

입력 인수

모두 축소

띠 높이를 나타내는 z 좌표로, 숫자형 벡터 또는 숫자형 행렬로 지정됩니다.

  • Z가 벡터인 경우 ribbonZ가 행 벡터인지 열 벡터인지에 관계없이 단일 띠를 만듭니다.

  • Z가 행렬인 경우 ribbon은 각 열별로 하나의 띠를 만듭니다. 띠는 x축 상의 단위 구간을 중심으로 나란히 표시됩니다.여기서 x 좌표의 범위는 1에서 Z의 열 개수까지입니다.

y 좌표로, 숫자형 벡터 또는 숫자형 행렬로 지정됩니다. Z의 크기에 따라 Y의 가능한 크기가 결정됩니다.

  • Z가 벡터인 경우 YZ와 동일한 크기의 벡터여야 합니다. ribbonYZ의 데이터를 사용하여 X = 1에서 단일 띠를 플로팅합니다.

  • Z가 행렬인 경우 YZ의 행 개수와 동일한 길이의 행 벡터 또는 열 벡터이거나 Z와 크기가 동일한 행렬일 수 있습니다. ribbonYZ의 데이터를 사용하여 Z의 각 열에 대한 띠를 플로팅합니다. Y가 벡터인 경우 각 띠는 같은 y 좌표를 갖습니다.

띠 너비로, 각 띠의 사용 가능한 총 공간에 대한 백분율을 나타내는 숫자형 스칼라로 지정됩니다.

  • width < 1인 경우 띠 너비는 할당된 공간의 일부를 차지합니다.

  • width = 1이면 띠가 서로 닿게 되어, z축에서 내려다보면 띠 사이에 공간이 보이지 않습니다.

  • width > 1이면 띠가 서로 겹치고 교차할 수 있습니다.

예를 들어, 디폴트 값인 0.75는 띠 너비가 띠의 사용 가능한 총 공간의 75%이고 띠 양쪽에 12.5%의 빈 공간이 있음을 의미합니다.

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않는 경우 MATLAB®은 현재 좌표축으로 플로팅하거나 좌표축이 없다면 Axes 객체를 만듭니다.

확장 기능

버전 내역

R2006a 이전에 개발됨