2次元プロット上に曲面の等高線を描画
contour2d(x, y, z, nz, [style, strf, leg, rect, nax]) contour2d(x, y, z, nz, <opt_args>)
大きさ n1
および n2
の実数行ベクトル: グリッド.
大きさ(n1,n2)
の実数行列,
グリッドにおける関数の値または曲面z=f(x,y)
を定義する
Scilab関数.
等高線の値または等高線の数.
nz
が整数の場合,
この値は,
以下のように zmin
から
zmax
の範囲で等間隔に並んだ
等高線の数を指定します:
z= zmin + (1:nz)*(zmax-zmin)/(nz+1)
![]() | zmin および zmax
の等高線は描画されない
(一般にこれらは点となります)が,
これらは以下のコマンドにより追加できる
ことに注意してください. |
nz
がベクトルの場合,
nz(i)
は,
i
番目の等高線の値を指定します.
一連の命令 key1=value1,key2=value2
,...を表します.
ただし, key1
,key2,...
には以下のどれかを
指定できます:
style
,
leg
, rect
,
nax
, strf
または
axesflag
および
frameflag
(plot2d参照)
plot2d参照. 引数 style
は,
等高線で使用される破線の形式または色を指定します.
その大きさは等高線の数と同じとする必要があります.
contour2d
は,
曲面z=f(x,y)
の等高線を2次元プロットに描画します.
f(x,y)
の値は,
x
および y
で指定されるグリッド点において
行列z
で指定します.
等高線上に印字される浮動小数点数のフォーマットを
xset("fpf",string)
により変更することができます.
ただし, string
にはC言語の構文で
(例えば string="%.3f"
)でフォーマットを指定します.
デフォルトのフォーマットに戻すには string=""
と
してください.
出力を抑制するには, string=" "
を使用してください.
この最後の機能は, legendsと組み合わせて
等高線の数値を通常の等高線上ではなく,凡例に表示する場合に有用です.
(例を参照)
オプションの引数 style
,
strf
, leg
,
rect
, nax
は,一連の命令key1=value1, key2=value2
,...により
指定できます.ただし, key は style
,strf
,
leg
,rect
,nax
とすることが可能です.
この場合, 順番には特別な意味はありません.
3次元曲面に等高線を描画するには,contour
を使用してください.
contour2d(1:10,1:10,rand(10,10),5,rect=[0,0,11,11]) | ![]() | ![]() |
// 等高線の値を凡例に表示 // いくつかの裏技を使用していることに注意してください... x = linspace(0,4*%pi,80); z = cos(x')*cos(x); clf(); f=gcf(); xset("fpf"," ") // 裏技 1: これにより等高線の値は // 等高線上に描画されなくなります f.color_map=jetcolormap(7); // 裏技2: 等高線とインターフェイスをとることなく凡例を右に表示するために // xmax 値を十分に大きくした rect を使用します. contour2d(x,x,z,-0.75:0.25:0.75,frameflag=3,rect=[0,0,5*%pi,4*%pi]) // 裏技3: legendsを使用 (より実用的なlegend関数は等高線の一つの値が // 2つの曲線により構成される場合に動作しないことに注意してください. legends(string(-0.75:0.25:0.75),1:7,"lr"); xtitle("Some level curves of the function cos(x)cos(y)") | ![]() | ![]() |