3次元曲面に等高線を描画
contour(x,y,z,nz,[theta,alpha,leg,flag,ebox,zlev]) contour(x,y,z,nz,<opt_args>)
大きさ n1 および n2の実数行ベクトル.
大きさ (n1,n2)の実数行列, 関数の値または
曲面 z=f(x,y)
を定義するScilab関数.
等高線の値または等高線の数.
nz
が整数の場合, その値は等高線の数
を指定し,以下のように zmin から zmaxまで等間隔に設定されます:
zmin
および
zmax
の等高線は描画されません
(一般にこれらは複数の点となってしまいます)が,
以下のように追加できることに注意してください.
nz
がベクトルの場合,
nz(i)
は i番目の等高線の値を指定します.
zmin
および zmax
の
等高線を表示するには,以下のように
イプシロン許容誤差を追加するのが便利です:
nz=[zmin+%eps,..,zmax-%eps]
.
一連の命令 key1=value1, key2=value2
,
... ただし, key は theta
,alpha
,leg
,
flag
, ebox
,zlev
(以下参照).
この場合, 順番には特別な意味はありません.
実数値で,観測点の球座標(単位:度).
各軸の表題を定義する文字列, フィールドセパレータは @, 例: "X@Y@Z".
実数ベクトルで, その要素は flag=[mode,type,box]
.
文字列で,モードを定義.
等高線は(x,y,z)で定義された曲面に描画されます.
等高線は3次元プロットおよび equation z=zlevで定義された平面に 描画されます.
等高線は2次元プロットに描画されます.
整数 (スケーリング).
プロットはカレント
(前の param3d
,
plot3d
, contour
または
plot3d1
のコールにより設定された)
の3次元スケーリングを用いて行われます.
アスペクト比の最大値に基づき3次元ボックスが
自動的にスケールが調整されます.オプション引数ebox
により境界が指定されます.
アスペクト比の最大値に基づき3次元ボックスが 自動的にスケールが調整されます. 境界は指定したデータに基づき計算されます.
type=1
に似ており,
オプションのebox
で指定された
ボックス付きの3次元の等しい軸となります.
type=2
に似ており,
データに基づく
3次元の等しい軸となります.
type=1
に似ており,
オプションのebox
で指定された
ボックス付きの3次元の拡大された等しい軸となります.
type=2
に似ており,
データに基づく
3次元の拡大された等しい軸となります.
整数 (プロット周囲のフレーム).
プロットの周囲には何も描画されません.
未実装 (box=0と同じ).
曲面の後ろの軸のみが描画されます.
曲面を囲うボックスが描画され, 表題が追加されます.
曲面を囲うボックスが描画され, 表題と軸が追加されます.
flag
のtype
が1の時に
使用されます.
ベクトル[xmin,xmax,ymin,ymax,zmin,zmax]
としてプロットの境界を指定します.
実数.
contour
は,曲面 z=f(x,y) の等高線を描画します.
等高線は, 3次元曲面上に描画されます.(zlev
を除く)
オプションの引数は関数plot3d
と同じです.
これらのオプションの意味は同じです.
これらのオプションは3次元プロット上への等高線の描画を制御します.
flag(1)=mode
のみが特別な意味を有します.
等高線は (x,y,z) で定義された曲面上に描画されます.
3次元プロット上および 式 z=zlevで定義されたプロット上にに等高線が描画されます.
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) | ![]() | ![]() |
// 3D t=linspace(-%pi,%pi,30); function z=my_surface(x, y),z=x*sin(x)^2*cos(y),endfunction z=feval(t,t,my_surface); plot3d(t,t,z);contour(t,t,z+0.2*abs(z),20,flag=[0 2 4]); | ![]() | ![]() |