ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

surface

surface オブジェクトの作成

構文

surface(Z)
surface(Z,C)
surface(X,Y,Z)
surface(X,Y,Z,C)
surface(x,y,Z)
surface(...'PropertyName',PropertyValue,...)
surface(ax,...)
h = surface(...)

プロパティ

プロパティの一覧については、Surface のプロパティ を参照してください。

説明

surface は、Surface グラフィックス オブジェクトを作成するための低水準関数です。Surface は、行列要素の行と列のインデックスを x 座標と y 座標として、z 座標を各要素の値をとして作成した行列データのプロットです。

surface(Z) は、行列 Z で指定した表面をプロットします。ここで、Z は幾何学的に四角形グリッドで定義した一価関数です。Z の値は、数値、datetime 値、duration 値、またはカテゴリカル値にすることができます。

surface(Z,C) は、Z で指定した表面をプロットし、C のデータで着色します (「例」を参照)。

surface(X,Y,Z) は、C = Z を使用するため、色は x-y 平面からの表面の高さに比例します。

surface(X,Y,Z,C) は、XYZ で指定されるパラメトリックな表面を C で指定した色でプロットします。XY、および Z の値は、数値、datetime 値、duration 値、またはカテゴリカル値にすることができます。

surface(x,y,Z)surface(x,y,Z,C) は、最初の 2 つの行列引数をベクトルで置き換え、[m,n] = size(Z) のとき、length(x) = n および length(y) = m でなければなりません。この場合、表面の各面の頂点は、(x(j),y(i),Z(i,j)) になります。xZ の列に対応し、yZ の行に対応することに注意してください。パラメトリックな表面の詳細な説明については、関数 surf を参照してください。xy、および Z の値は、数値、datetime 値、duration 値、またはカテゴリカル値にすることができます。

surface(...'PropertyName',PropertyValue,...) は、XYZC に加えて、プロパティの名前と値のペアを引数として、表面の追加のプロパティを指定します。プロパティの詳細については、Surface のプロパティ を参照してください。

surface(ax,...) は、現在の座標軸 (gca) ではなく、ax で指定された座標軸に表面を作成します。オプションの ax は、前述の構文のすべての入力引数の組み合わせより前に指定できます。

h = surface(...) は基本的な surface オブジェクトを返します。

すべて折りたたむ

関数 を定義域 および でプロットします。meshgrid を使用して、XY を定義します。次に、Z を定義して表面プロットを作成します。view を使用して、プロットのビューを変更します。

[X,Y] = meshgrid(-2:0.2:2,-2:0.2:2);
Z = X.*exp(-X.^2 - Y.^2);
figure
surface(X,Y,Z)
view(3)

surface は、XY および Z の対応する値からプロットを作成します。カラー データ C を定義しない場合、surfaceZ を使用して色を決定するため、色は表面の高さに比例して変化します。

関数 peaks を使用して、25 行 25 列の行列として XDYD および ZD を定義します。

[XD,YD,ZD] = peaks(25);

clown データセットを読み込み、イメージ データ X とその関連カラーマップ map を取得します。関数 flipud を使用して X を反転し、反転させたイメージを表面のカラー データ C として定義します。

load clown
C = flipud(X);

表面プロットを作成して、表面に沿ってイメージを表示します。表面データ ZD とカラー データ C は異なる次元をもつため、表面の FaceColor'texturemap' に設定しなければなりません。

figure
surface(XD,YD,ZD,C,...
    'FaceColor','texturemap',...
    'EdgeColor','none',...
    'CDataMapping','direct')
colormap(map)
view(-35,45)

通常、clown データは 'ij' による軸の番号付けを使用する関数 image で表示されます。この例では、flipud を使用して垂直方向にイメージ データを反転させます。

チュートリアル

例については、データを表面として表すを参照してください。

ヒント

surface は、Figure や座標軸の NextPlot プロパティの設定に従いません。この関数は、現在の Axes にその Surface オブジェクトを単純に追加します。

独立したカラー データ (C) を指定しない場合、MATLAB® は、表面の着色に行列 (Z) を使用します。この場合、色は Z の値に比例します。表面の領域を定義するデータとは別に、表面の着色用の独立した行列を指定できます。

プロパティをプロパティ名/プロパティ値のペアまたはドット表記を使って指定できます。

surface では、XDataYDataZData、および CData プロパティのプロパティ名を省略できます。以下に例を示します。

surface('XData',X,'YData',Y,'ZData',Z,'CData',C)

は、以下と同等になります。

surface(X,Y,Z,C)

入力引数として、次のように 1 個の行列を指定したとき、

surface(Z)

MATLAB は、ユーザーが指定したかのようにデータのプロパティを割り当てます。

surface('XData',[1:size(Z,2)],...
   'YData',[1:size(Z,1)],...
   'ZData',Z,...
   'CData',Z)

axiscaxiscolormapholdshadingview コマンドは、表面に影響を与えるグラフィックスのプロパティを設定します。また、オブジェクト作成後、ドット表記を使用して、表面プロパティ値の設定やクエリができます。

R2006a より前に導入