ドキュメンテーション

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

fill

2 次元の多角形の塗りつぶし

構文

fill(X,Y,C)
fill(X,Y,ColorSpec)
fill(X1,Y1,C1,X2,Y2,C2,...)
fill(...,'PropertyName',PropertyValue)
h = fill(...)

説明

関数 fill は、色付きの多角形を作成します。

fill(X,Y,C) は、C で指定される頂点の色を使用し、XY で表されるデータから塗りつぶされた多角形を作成します。C は、カラーマップへのインデックスとして使われるベクトルまたは行列です。C が行ベクトルの場合、length(C)size(X,2) およびsize(Y,2) に等しくなければなりません。また、C が列ベクトルの場合、length(C)size(X,1) および size(Y,1) に等しくなければなりません。必要に応じて、関数 fill は、最後の頂点を最初の頂点に接続して多角形を閉じます。

fill(X,Y,ColorSpec) は、ColorSpecで指定される色を使用して、XY で指定される 2 次元の多角形を塗りつぶします。

fill(X1,Y1,C1,X2,Y2,C2,...) は、複数の 2 次元の塗りつぶし領域を指定します。

fill(...,'PropertyName',PropertyValue) では、Patch グラフィックス オブジェクトのプロパティ名と値を指定することができます。

h = fill(...) は、Patch グラフィックス オブジェクトのハンドルのベクトルを Patch オブジェクトごとに 1 つ返します。

すべて展開する

赤い八角形の作成

データを定義します。

t = (1/16:1/8:1)'*2*pi;
x = sin(t);
y = cos(t);

関数 fill を使用して赤い八角形を作成します。

fill(x,y,'r')
axis square

詳細

すべて展開する

ヒント

X または Y のいずれかが行列で、もう一方が行列の行数と同じ要素数の列ベクトルの場合、関数 fill は列ベクトル引数を複写して、必要なサイズの行列を生成します。また、関数 fill は、XY の対応する要素から頂点を形成し、各列のデータから 1 つの多角形を作成します。

カラー シェーディングのタイプは、引数リスト内での色の設定により異なります。ColorSpec を使って色を指定すると、関数 fill は、Patch オブジェクトの FaceColor プロパティを対応する RGB の 3 要素に設定することにより、フラットなシェーディングの多角形を生成します。

C を使って色を指定すると、関数 fill は、Axes の CLim プロパティで指定される値によって C の要素をスケーリングします。C をスケーリングした後、C は現在のカラーマップを指します。

C が行ベクトルの場合、関数 fill は、フラットなシェーディングの多角形を生成し、行列 X および Y のそれぞれの列で定義される色は各要素により決定されます。各 Patch オブジェクトの FaceColor プロパティは、'flat' に設定されます。各行の要素は、n 番目の Patch オブジェクトに対する CData プロパティ値になります。ここで、n は、X または Y の対応する列です。

C が列ベクトルまたは行列の場合、関数 fill は、頂点の色の線形内挿を使用して、内挿された色をもつ多角形を生成します。また、Patch グラフィックス オブジェクトの FaceColor プロパティを 'interp' に設定し、1 つの列の要素が、それぞれの Patch オブジェクトに対する CData プロパティの値になります。C が列ベクトルの場合、関数 fill は、その列ベクトルを複写して、必要なサイズの行列を生成します。

この情報は役に立ちましたか?