| Graphics | ![]() |
コンターアルゴリズム
関数contourcは、他のコンター関数で使用するコンター行列を計算します。これはコマンドラインからは呼び出されない低水準関数です。
コンターアルゴリズムは、まず、どのコンターレベルを描くかを決定します。入力ベクトルvを設定した場合、vの要素はコンターレベル値で、length(v)は生成するコンターレベルの数を決定します。vを設定しないと、アルゴリズムは2または5で割り切れる20本以下のコンターレベルから選択します。
コンターアルゴリズムは、入力行列Zを各要素を定間隔のグリッド点でのデータとして扱います。アルゴリズムは、行列の4つの隣接要素(すなわちセル)の各ブロックの値とコンターレベルの値を比較します。コンターレベルが、あるセルの内部であれば、アルゴリズムはセルの両端とコンターが交差する点を求めるために線形補間を行います。アルゴリズムは、これらの点を結んで、コンターラインのセグメントを生成します。
contour, contour3, contourfは、すべてのコンターラインを設定する2行の行列を出力します。行列の形式はつぎのとおりです。
C = [ value1 xdata(1) xdata(2)...
numv ydata(1) ydata(2)...]
各コンターラインを定義する列の最初の行は、vで設定するコンター値で、clabelで使用します。その値のつぎの行(下)に、コンターラインの(x,y)頂点の数があります。残りの列には(x,y)の組合わせに対するデータが含まれます。たとえば、C = contour(peaks(3))によって計算されたコンター行列は、つぎのとおりです。

| 希望するレベルの単一コンターラインの描画 | コンターのオフセットの変更 | ![]() |