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(___) は、リボンごとに 1 つのオブジェクトを含む 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 の各列が 1 つのリボンを表し、それぞれ列番号に対応する一定の "x" 座標の位置に Z の行番号に対応する "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.

3 つのリボンを "y" 軸に沿って異なる位置にプロットします。リボンの "y" 座標を、リボンの高さの行列 Z と同じサイズの行列 Y として指定します。Y の各列が 1 つのリボンに対応します。

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.

リボン プロットを作成し、出力引数を指定します。出力は 5 つの Surface オブジェクトのベクトルで、各オブジェクトが 1 つのリボンに対応します。

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 プロパティを変更して 1 つ目のリボンを強調表示します。

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 がベクトルの場合、Z が行ベクトルか列ベクトルかに関係なく、ribbon は単一のリボンを作成します。

  • Z が行列の場合、ribbon は列ごとに 1 つのリボンを作成します。リボンは単位区間を中心として x 軸に沿って進みます。x 座標の範囲は 1 から Z の列数までです。

y 座標。数値ベクトルまたは数値行列として指定します。Y の可能なサイズは Z のサイズで決まります。

  • Z がベクトルの場合、YZ と同じサイズのベクトルでなければなりません。ribbon は、YZ のデータを使用して X = 1 の位置に単一のリボンをプロットします。

  • Z が行列の場合、YZ の行数と等しい長さの行ベクトルまたは列ベクトルか、Z と同じサイズの行列にすることができます。ribbon は、YZ のデータを使用して Z の各列のリボンをプロットします。Y がベクトルの場合、各リボンで y 座標が同じになります。

リボンの幅。各リボンに使用可能な間隔全体に対する割合を表す数値スカラーとして指定します。

  • width < 1 の場合、リボンは割り当てられた間隔のうちのその割合を占めます。

  • width = 1 の場合、リボン同士が z 軸に沿って隙間なく表示されます。

  • width > 1 の場合、リボンは重なり、交差することがあります。

たとえば、既定値の 0.75 は、リボンの幅がリボンに使用可能な間隔全体の 75% で、両側に 12.5% ずつ空白があることを意味します。

ターゲット座標軸。Axes オブジェクトとして指定します。座標軸を指定しない場合、MATLAB® は現在の座標軸にプロットするか、存在しない場合は Axes オブジェクトを作成します。

拡張機能

バージョン履歴

R2006a より前に導入