Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.3.0 - 日本語

Change language to:
English - Français - Português

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

Scilab manual >> Graphics Library > 2d_plot > contour2d

contour2d

2次元プロット上に曲面の等高線を描画

呼び出し手順

contour2d(x,y,z,nz,[style,strf,leg,rect,nax])
contour2d(x,y,z,nz,<opt_args>)

パラメータ

x,y

大きさ n1 および n2 の実数行ベクトル: グリッド.

z

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

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番目の等高線の値を指定します.

<opt_args>

一連の命令 key1=value1,key2=value2,...を表します. ただし, key1,key2,...には以下のどれかを 指定できます:style, leg, rect, nax, strf または axesflag および frameflag (plot2d参照)

style,strf,leg,rect,nax

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])
// 等高線の値の出力形式を変更
xset("fpf","%.2f")
clf()
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: これにより等高線の値はt
                 //         等高線上に描画されなくなります
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)")

作者

J.Ph.C.

<< champ_properties 2d_plot contour2di >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jan 26 16:25:11 CET 2011