주요 콘텐츠

ribbon

  • Ribbon plot

설명

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

예제

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

예제

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

예제

ribbon(___,Name=Value)는 하나 이상의 이름-값 인수를 사용하여 띠 플롯의 속성을 설정합니다. 예를 들어, 띠의 색과 투명도를 지정할 수 있습니다. 속성 목록은 Surface 속성를 참조하십시오. (R2024b 이후)

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 = 
  5×1 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 객체를 만듭니다.

이름-값 인수

모두 축소

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

예: ribbon([1 2 3; 1 2 3],FaceColor="red")는 빨간색 띠 플롯을 만듭니다.

참고

여기에 나와 있는 속성은 일부에 불과합니다. 전체 목록을 보려면 Surface 속성를 참조하십시오.

면 색으로, 이 표에 있는 값 중 하나로 지정됩니다.

설명
'flat'

CData 속성의 값에 따라 각 면에 각각 다른 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 각 면 첫 번째 꼭짓점의 색 값(양의 xy 방향)은 전체 면의 색을 결정합니다. FaceAlpha 속성이 'interp'로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each face a different color based on sample values in the CData property

'interp'

CData 속성의 값에 따라 각 면에 보간된 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 꼭짓점에서 색 값을 보간하므로 면마다 색이 달라집니다. FaceAlpha 속성이 'flat'으로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each face showing different interpolated coloring based on sample values in the CData property

RGB 3색, 16진수 색 코드 또는 색 이름

모든 면에 지정된 색을 사용합니다. 이 옵션은 CData 속성의 색 값을 사용하지 않습니다.

Sample of a surface with all faces shown in red

'texturemap'곡면에 맞게 CData의 색 데이터를 변환합니다.
'none'면을 그리지 않습니다.

RGB 3색과 16진수 색 코드는 사용자 지정 색을 지정할 때 유용합니다.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 문자형 벡터 또는 string형 스칼라로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

다음 표에는 라이트 테마와 다크 테마에서 플롯의 디폴트 색 팔레트가 나열되어 있습니다.

팔레트팔레트 색

"gem" — 라이트 테마 디폴트 값

R2025a 이전: 대부분의 플롯은 기본적으로 이 색을 사용합니다.

Sample of the "gem" color palette

"glow" — 다크 테마 디폴트 값

Sample of the "glow" color palette

orderedcolors 함수와 rgb2hex 함수를 사용하여 이러한 팔레트의 RGB 3색과 16진수 색 코드를 가져올 수 있습니다. 예를 들어, "gem" 팔레트의 RGB 3색을 가져와서 16진수 색 코드로 변환해 보겠습니다.

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b 이전: RGB = get(groot,"FactoryAxesColorOrder")를 사용하여 RGB 3색을 가져옵니다.

R2024a 이전: H = compose("#%02X%02X%02X",round(RGB*255))를 사용하여 16진수 색 코드를 가져옵니다.

면 투명도로, 다음 값 중 하나로 지정됩니다.

  • 범위 [0,1] 사이에 있는 스칼라 값 — 모든 면에 균일한 투명도를 사용합니다. 값이 1이면 완전히 불투명하고 0이면 완전히 투명합니다. 01 사이의 값을 지정하면 반투명해집니다. 이 옵션은 AlphaData 속성의 투명도 값을 사용하지 않습니다.

  • 'flat'AlphaData 속성의 값에 따라 각 면에 서로 다른 투명도를 사용합니다. 첫 번째 꼭짓점의 투명도 값에 따라 전체 면의 투명도가 결정됩니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 또한 FaceColor 속성이 'flat'으로 설정되어 있어야 합니다.

  • 'interp'AlphaData 속성의 값에 따라 각 면에 보간된 투명도를 사용합니다. 꼭짓점의 값을 보간하기 때문에 각 면에서 투명도가 다릅니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 또한 FaceColor 속성이 'interp'로 설정되어 있어야 합니다.

  • 'texturemap' — 곡면에 맞게 AlphaData의 데이터를 변환합니다.

모서리 선 색으로, 여기에 나열된 값 중 하나로 지정됩니다. 디폴트 색 [0 0 0]은 검은색 모서리에 해당합니다.

설명
'none'모서리를 그리지 않습니다.
'flat'

CData 속성의 값을 기반으로 하여 각 모서리에 다른 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 각 면 첫 번째 꼭짓점의 색 값(양의 xy 방향)은 인접 모서리의 색을 결정합니다. EdgeAlpha 속성이 'interp'로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each edge a different color based on sample values in the CData property

'interp'

CData 속성의 값을 기반으로 하여 각 모서리에 보간된 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 꼭짓점에서 색 값을 선형적으로 보간하므로 모서리마다 색이 달라집니다. EdgeAlpha 속성이 'flat'으로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each edge showing different interpolated coloring based on sample values in the CData property

RGB 3색, 16진수 색 코드 또는 색 이름

모든 모서리에 지정된 색을 사용합니다. 이 옵션은 CData 속성의 색 값을 사용하지 않습니다.

Sample of a surface with all edges shown in red

RGB 3색과 16진수 색 코드는 사용자 지정 색을 지정할 때 유용합니다.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 문자형 벡터 또는 string형 스칼라로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

다음 표에는 라이트 테마와 다크 테마에서 플롯의 디폴트 색 팔레트가 나열되어 있습니다.

팔레트팔레트 색

"gem" — 라이트 테마 디폴트 값

R2025a 이전: 대부분의 플롯은 기본적으로 이 색을 사용합니다.

Sample of the "gem" color palette

"glow" — 다크 테마 디폴트 값

Sample of the "glow" color palette

orderedcolors 함수와 rgb2hex 함수를 사용하여 이러한 팔레트의 RGB 3색과 16진수 색 코드를 가져올 수 있습니다. 예를 들어, "gem" 팔레트의 RGB 3색을 가져와서 16진수 색 코드로 변환해 보겠습니다.

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b 이전: RGB = get(groot,"FactoryAxesColorOrder")를 사용하여 RGB 3색을 가져옵니다.

R2024a 이전: H = compose("#%02X%02X%02X",round(RGB*255))를 사용하여 16진수 색 코드를 가져옵니다.

모서리 투명도로, 다음 값 중 하나로 지정됩니다.

  • [0,1] 범위의 스칼라 — 모든 모서리에 균일한 투명도를 사용합니다. 값이 1이면 완전히 불투명하고 0이면 완전히 투명합니다. 01 사이의 값을 지정하면 반투명해집니다. 이 옵션은 AlphaData 속성의 투명도 값을 사용하지 않습니다.

  • 'flat'AlphaData 속성의 값에 따라 각 모서리에 서로 다른 투명도를 사용합니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 첫 번째 꼭짓점의 투명도 값에 따라 전체 모서리의 투명도가 결정됩니다. 또한 EdgeColor 속성이 'flat'으로 설정되어 있어야 합니다.

  • 'interp'AlphaData 속성의 값에 따라 각 모서리에 보간된 투명도를 사용합니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 꼭짓점의 값을 보간하기 때문에 각 모서리에서 투명도가 다릅니다. 또한 EdgeColor 속성이 'interp'로 설정되어 있어야 합니다.

확장 기능

모두 확장

버전 내역

R2006a 이전에 개발됨

모두 확장