Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português -

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Graphics Library > 3d_plot > contour

contour

3次元曲面に等高線を描画

呼び出し手順

contour(x,y,z,nz,[theta,alpha,leg,flag,ebox,zlev])
contour(x,y,z,nz,<opt_args>)

パラメータ

x,y

大きさ n1 および n2の実数行ベクトル.

z

大きさ (n1,n2)の実数行列, 関数の値または 曲面 z=f(x,y)を定義するScilab関数.

nz

等高線の値または等高線の数.

-

nzが整数の場合, その値は等高線の数 を指定し,以下のように zmin から zmaxまで等間隔に設定されます:

z= zmin + (1:nz)*(zmax-zmin)/(nz+1)

zmin および zmax の等高線は描画されません (一般にこれらは複数の点となってしまいます)が, 以下のように追加できることに注意してください.

[im,jm] = find(z == zmin);     // または zmax 
plot2d(x(im)',y(jm)',-9,"000")
-

nz がベクトルの場合, nz(i) は i番目の等高線の値を指定します. zmin および zmax の 等高線を表示するには,以下のように イプシロン許容誤差を追加するのが便利です: nz=[zmin+%eps,..,zmax-%eps].

<opt_args>

一連の命令 key1=value1, key2=value2, ... ただし, key は theta,alpha,leg, flag, ebox,zlev (以下参照). この場合, 順番には特別な意味はありません.

theta, alpha

実数値で,観測点の球座標(単位:度).

leg

各軸の表題を定義する文字列, フィールドセパレータは @, 例: "X@Y@Z".

flag

実数ベクトルで, その要素は flag=[mode,type,box].

mode

文字列で,モードを定義.

mode=0:

等高線は(x,y,z)で定義された曲面に描画されます.

mode=1:

等高線は3次元プロットおよび equation z=zlevで定義された平面に 描画されます.

mode=2:

等高線は2次元プロットに描画されます.

type

整数 (スケーリング).

type=0

プロットはカレント (前の param3d, plot3d, contourまたは plot3d1のコールにより設定された) の3次元スケーリングを用いて行われます.

type=1

アスペクト比の最大値に基づき3次元ボックスが 自動的にスケールが調整されます.オプション引数ebox により境界が指定されます.

type=2

アスペクト比の最大値に基づき3次元ボックスが 自動的にスケールが調整されます. 境界は指定したデータに基づき計算されます.

type=3

type=1に似ており, オプションのeboxで指定された ボックス付きの3次元の等しい軸となります.

type=4

type=2に似ており, データに基づく 3次元の等しい軸となります.

type=5

type=1に似ており, オプションのeboxで指定された ボックス付きの3次元の拡大された等しい軸となります.

type=6

type=2に似ており, データに基づく 3次元の拡大された等しい軸となります.

box

整数 (プロット周囲のフレーム).

box=0

プロットの周囲には何も描画されません.

box=1

未実装 (box=0と同じ).

box=2

曲面の後ろの軸のみが描画されます.

box=3

曲面を囲うボックスが描画され, 表題が追加されます.

box=4

曲面を囲うボックスが描画され, 表題と軸が追加されます.

ebox

flagtypeが1の時に 使用されます. ベクトル[xmin,xmax,ymin,ymax,zmin,zmax] としてプロットの境界を指定します.

zlev

実数.

説明

contour は,曲面 z=f(x,y) の等高線を描画します. 等高線は, 3次元曲面上に描画されます.(zlevを除く) オプションの引数は関数plot3dと同じです. これらのオプションの意味は同じです. これらのオプションは3次元プロット上への等高線の描画を制御します. flag(1)=modeのみが特別な意味を有します.

mode=0

等高線は (x,y,z) で定義された曲面上に描画されます.

mode=1

3次元プロット上および 式 z=zlevで定義されたプロット上にに等高線が描画されます.

mode=2

2次元プロット上に等高線が描画されます.

等高線上に印字される浮動小数点数のフォーマットを xset("fpf",string)により変更することができます. ただし, string にはC言語の構文で (例えば string="%.3f")でフォーマットを指定します. デフォルトのフォーマットに戻すには string=""と してください. 出力を抑制するには,string=" "を使用してください.

通常, 2次元プロット上に等高線を描画するためにcontour2d を使用します.

コマンド contour() を入力することでデモを参照できます.

t=linspace(-%pi,%pi,30);
function z=my_surface(x, y),z=x*sin(x)^2*cos(y),endfunction

contour(t,t,my_surface,10)
// 等高線の出力形式を変更します
xset("fpf","%.1f")
clf()
contour(t,t,my_surface,10)
// 3D
clf()
z=feval(t,t,my_surface);
plot3d(t,t,z);contour(t,t,z+0.2*abs(z),20,flag=[0 2 4]);

参照

  • contour2d — 2次元プロット上に曲面の等高線を描画
  • plot3d — 曲面の3次元プロット

作者

J.Ph.C.

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 11:00:58 CET 2011