`set` コマンドは実に多くのオプションを設定します.
`show` コマンドはそれらの設定値を表示します.`show all` でそれら全て を表示します.
GNUPLOT は,デフォルトでは,極座標形式のプロットの独立変数の単位とし てラジアンを使います.`set polar` より先に `set angles degrees` を指 定すると,デフォルトの範囲は [0:360] に変更され独立変数は度を単位とす るようになります.これは,データファイルからプロットするときに特に便 利でしょう.angle の設定は3次元でも `set mapping` とともに使用するこ とによって同様な効果があります.
書式: set angles { degrees | radians } show angles
`set arrow`コマンドを使うことにより,グラフ上の任意の位置に矢印を表示 させることができます.
書式: set arrow {<タグ>} {from <sx>,<sy>{,<sz>}} {to <ex>,<ey>{,<ez>}} {{no}head} set noarrow {<タグ>} show arrow
座標値が省略された場合は,0 が指定されたことになります.x,y,z の各 値は,グラフの座標系で指定します.z 値は `splot` の場合のみ指定できま す.<タグ> とは各矢印を識別する整数です.タグが指定されなかった場合は, その時点で未使用の最も小さい数が自動的に割り当てられます.タグを使う ことによって,ある特定の矢印を変更したり,削除したりできます.既に存 在する矢印のある事項を変更したい場合は,タグを明示した `set arrow` コ マンドで変更箇所を指定して下さい.nohead を指定することによって矢先 のない線分を描かせることもできます.デフォルトでは,矢先がついています.
グラフの枠からはみ出すような矢印を書くこともできますが,装置によって は,エラーを生じることがあります.
例: 原点から (1,2) への矢印を描きます: set arrow to 1,2 (-10,4,2) から (-5,5,3) への矢印を描き,番号 3 を振っておきます: set arrow 3 from -10,4,2 to -5,5,3 上の矢印を (1,1,1) から始まるように変更し,かつ矢先を消します: set arrow 3 from 1,1,1 nohead 第2矢印を消します: set noarrow 2 全ての矢印をけします: set noarrow 全ての矢印の情報をタグの順に表示します: show arrow
自動縮尺機能(autoscale)は x,y,z の各軸に対して独立にまたは一括して 指定できます.デフォルトでは全ての軸に対して自動縮尺設定を行います.
自動縮尺機能を使うときは,描画範囲は自動的に割り出され,従属変数軸 (`plot` のときは y 軸,`splot` のときは z 軸)は,関数やデータの値域が 収まるように設定されます.
従属変数軸の自動縮尺機能が指定されていない場合は,現在の y や z の描 画範囲がそのまま使われます.
`set yrange` や `set zrange` を参照して下さい.
独立変数軸(`plot` のときは x 軸,`splot` のときは x, y 軸)の自動縮尺 機能が指定されている場合は,描画されるデータファイルの全ての点が収ま るように定義域をとるようになります.データファイルが1つも指定されて いない場合は,自動縮尺機能はなんの効果もありません.つまり,関数のみ が指定されていてデーターファイルを使わない場合は,x 軸の描画範囲(z = f(x,y) を描画しているときはy軸も)は影響をうけません.
`set xrange` や `set yrange` を参照して下さい.
媒介変数モード(parametric)を使う場合も自動縮尺機能は有効です.この場 合,より多くの従属変数があるので,x, y, z 各軸を制御する機会が増えま す.媒介変数モードでは,独立変数は `plot` については t で,`splot` に ついては u, v です.よって,自動縮尺機能は,全ての描画範囲 (t, u, v, x, y, z) を制御することになり,x, y, z軸方向については常に自動的に範囲 設定が行われます.
`set parametric` も参照して下さい.
書式: set autoscale <軸> set noautoscale <軸> show autoscale
ここで<軸>は,`x`, `y`, `z`, `xy` のなかのいずれかです.<軸>が指定さ れなかった場合は全ての軸が対象となります.
例: y 軸に自動縮尺機能を指定します.x 軸については影響を与えません: set autoscale y x,y 両軸に自動縮尺機能を指定します: set autoscale xy x,y,z 全軸に自動縮尺機能を指定します: set autoscale x,y,z 全軸の自動縮尺機能を禁止します: set noautoscale z 軸のみについて自動縮尺機能を禁止します: set noautoscale z
媒介変数表示モード(`set parametric`)においては,xrange も yrange と同 様に縮尺を変えることができます.つまり,媒介変数モードにおいては,x 軸方向も自動的に縮尺が調整され,描こうとしている,媒介変数表示の関数 が収まるようになります.もちろん,y軸方向も媒介変数モードでない時同様 に自動的に縮尺を変えます.x 軸について自動縮尺機能が設定されていない 場合は,現在の x の範囲が使われます.
データファイルと関数が混在している場合,x 軸方向の自動縮尺機能が設定 されているならば,関数の x 軸方向の描画範囲は,データファイルの自動縮 尺に合わせられます.このように現在は媒介変数表示でない場合との互換性 をとってありますが,将来変更されるかもしれません.これは,媒介変数表 示モードにおいては,そうでないときほど x 軸と y 軸の区別が無いために, このような動作が多くの場合に便利でないかもしれないという考えによるも のです.
片手落ちにならないように `set autoscale t` というコマンドも使えるよう になっています.しかしその効果は非常に小さいものです.自動縮尺機能が 設定されていると,GNUPLOT が t の範囲が無くなってしまうと判断した場合 に範囲を少し調整します.自動縮尺機能が設定されていないと,このような ときにはエラーとなります.このような動作は実はあまり意味がない可能性 があり,結局 `set autoscale t` というコマンドは存在意義が問われるべき ものとなっています.
`splot` においては上記の発想に基づいたうえで拡張されています.自動縮 尺機能が設定されている場合,x, y, z の各描画範囲は計算結果が収まるよ うに設定され,縮尺調整されることになります.
`set border` と `set noborder` の両コマンドは,`plot` や `splot` によ るプロットのまわりに枠を表示するかどうかを指定します.
書式: set border set noborder show border
`set boxwidth` コマンドは,`boxes` と `boxerrorbar` スタイルにおける 棒のデフォルトの幅を設定するために使います.
第5列で指定される幅のないデータファイルの描画や,関数の描画の場合は, 各々の棒の幅は `set boxwidth` によって設定します.もし,`set boxwidth` コマンドの後ろに幅を与えると,それが幅として使われます.そうでない場合は, 隣り合う棒と接するように各々の棒の幅が自動的に計算されます.
書式: set boxwidth {<幅>} show boxwidth 棒の幅を自動に設定するには set boxwidth を使って下さい.
GNUPLOT は,clabel が設定されている時には,各々の等高線のレベルに対して 使う線種を変化させます.このオプションが指定されていると(デフォルト), 凡例によって,各々の線種をそれが表すzのレベルとともに分類されます.
書式: set clabel set noclabel show clabel
GNUPLOT はグラフの端の辺りのデータ点や線をクリッピングすることができ ます.
書式: set clip <クリップ型> set noclip <クリップ型> show clip
クリップ型として GNUPLOT は `points`, `one`, `two` の3種を扱えます. ある描画に対して,これらのクリップ型は任意の組み合せで設定することが できます.
クリップ型 `points` を設定すると,描画領域内にはあるけれど境界線に非 常に近いような点をクリップする(実際には描画しないだけですが)ように GNUPLOT に指示します.これは点として大きなマークを使用したときに,そ のマークが境界線からはみ出さないようにする効果があります.`points` を クリップしない場合,境界線の辺りの点が汚く見えるかもしれません.その 場合,x や y の描画範囲(xrange, yrange)を調整してみて下さい.
クリップ型 `one` を設定すると,一端のみが描画領域にあるような線分も描 画するように GNUPLOT に指示します.この際,描画領域内にある部分のみが 実際に描画される範囲です.設定しなかった場合,このような線分は描画対 象とならず,どの部分も描画されません.
両端は共に描画範囲に無いが描画領域を通過するという線分もあります.ク リップ型 `two` を設定することによって,このような線分の描画領域の部分 を描画することができます.
どのような状況でも,描画範囲の外に線が引かれることはありません.
デフォルトでは,`noclip points`, `clip one`, `noclip two` となっています.
全てのクリップ型の設定状況を見るには, show clip とします.
過去のバージョンとのとの互換性のため以下の書式も使用可能です.
set clip set noclip`set clip` は `set clip points` と同義です.`set noclip` は3種のクリッ プ型全てを無効にします.
等高線を引くための種々のパラメータを設定します(`contour` も参照して下さい).
書式: set cntrparam { { linear | cubicspline | bspline } | points <n> | order <n> | levels { [ auto ] <n> | discrete <z1>,<z2>, ... | incremental {<開始値>, <増分値>{, <終了値>} } } 例: set cntrparam bspline set cntrparam points 7 set cntrparam order 10 set cntrparam levels auto 5 # 5つの自動設定のレベル set cntrparam levels discrete .1,1/exp(1),.9 # 3つの離散設定 .1,.37,.9 set cntrparam levels incremental 0,.1,.4 # 5つの等増加する高度 0, .1, .2, .3, .4 set cntrparam levels 10 # n = 10 に設定する.現在設定されている auto か discr. か increment の # 開始値と増分値は保持されたまま,一方,終了値は変化する. set cntrparam levels incremental 100,50 # 開始値 = 100, 増分 = 50 に設定します. レベルの数 nは保持されたまま.
このコマンドは等高線がどのように引かれるかを制御します.<n> は整数型 の定数式,<z1>, <z2> は任意の定数式とします. 各変数の意味は次のとおりです:
`linear`, `cubicspline`, `bspline` --- 近似(補間)方法を指定します. `linear` ならば,等高線は曲面から得られた値により,区分的に直線で引か れます.`cubicspline` ならば,区分的な直線は,波打つ可能性があります が,いくぶんなめらかな等高線を得られるように補間されます.3番目の選 択枝は `bspline` です.これは区分的な直線から近似値を求めるだけですが, よりなめらかになることが保証されています.
`points` --- 最終的には,全ての描画は,区分的な直線で行われます.ここ で指定した数が曲線を補間する点の数になります.これは `cubicspline` と `bspline` についてのみ有効です.
`order` --- bspline 近似の次数.この次数が大きくなるに連れて,等高線 がなめらかになります.(もちろん,高次の bspline 曲線ほど元の区分的直 線からは離れていきます) このオプションは,`bspline` モードでのみ有効 です.指定できる値は,2 (直線)から 10 までの整数です.
`levels` --- 等高線のレベルの数, n. レベルの選択は,`auto` (デフォルト),
`discrete`, `incremental` によって制御します.`auto` では,曲面の上下限が
zmin と zmax の場合には,等高線を zmin+dz から zmax-dz までの間に,
大きさ dz の刻みで引きます.ここで,dz = (zmax - zmin) / (levels + 1)
です.
`discrete` では,等高線を,指定されたように z = z1, z2 ... で引きます.
離散的なレベルの数は,MAX_DISCRETE_LEVELS が上限です.これは,plot.h の
中で 30と定義されています.`increment` の場合は,<開始値> で始まり,
<増分値> で増加する,<n> 個の z の値に対して等高線を引きます.
曲面の等高線を引くことを指示します.このオプションは `splot` でのみ有効 です.
書式: set contour { base | surface | both } set nocontour
もしも `set contour` に対してオプションが指定されていないときは, `base` であると仮定されます.これらの 3 つのオプションは等高線をどこ に引くかを指定します.`base` では等高線を x/y 軸の刻みのある底面に描 きます.`surface` では等高線を面自体の上に描きます.`both` では等高線 を底面と面上の両方に描きます.
等高線の描画に影響を与えるパラメータについては `set cntrparam` も参照 して下さい.
`set data style` コマンドはデータのプロットに関するデフォルトのプロッ トスタイルを変更します.
書式: set data style show data style set data style <プロットスタイル>
最初の例では,`set data style` は選択可能なプロットスタイル(`lines`, `points`, `linespoints`, `dots`, `steps`, `impulses`, `errorbars`, `boxes`, `boxerrorbars`)を表示します.`show data style` は現在のデータ用の デフォルトのプロットスタイルを表示します.`set data style dots` で実際に プロットスタイルを変更します.`plot` も参照して下さい.
非格子データから格子データへの写像機能を有効にし,種々のパラメータを 設定します.
書式: set dgrid3d {,{<行数>}{,{<列数>}{,<ノルム>}}} set nodgrid3d 例: set dgrid3d 10,10,2 set dgrid3d ,,4
最初の例は,構成する格子を10×10に選び,距離の計算に L2 ノルムを使います. 2番目の例は,使用するノルムをL4に変更するだけです.
デフォルトでは,このオプションは無効になっています.有効にした時は, ファイルから読み込まれる3次元のデータは,散在するデータの組として 常に扱われます.グラフ描画と等高線描画のために,散在するデータを囲む 矩形領域から得られる寸法と行数/列数で指定した数を持つ格子が作られます. その格子は,xとy方向には等間隔です.一方,zの値は,格子点への距離で 重み付けしたデータ点の平均値として計算されます.格子点に近いデータ点ほど, その格子点に与える影響がより強くなります.3番目のパラメータ(ノルム)は, 距離ノルムを指定することによって距離の「意味」を制御します.この距離の 計算は,2の階乗(特に,1, 2, 4, 8, 16)に対して最適化されていますが, 任意の非負の整数を使うことができます.
この grid3d オプションは,散在するデータを格子データの組に変換する簡単な ローパスフィルタです.この問題に対するもっと洗練された手法が存在します. もし,grid3dの簡単な解が不十分だと感じたら,そのような手法を gnuplot の 外側で前処理として使うべきでしょう.
デフォルトでは GNUPLOT は,`plot` コマンドの独立変数として x を, `splot` コマンドの独立変数として x と y を仮定しています. これらは独立変数を示すための単なる記号であ ることから仮(dummy)変数と 呼ばれます. `set dummy` コマンドは,これらのデフォルトの仮変数の名前を変更します. 例えば,時間の関数を表示するのには,仮変数を t と呼んだ方が便利でしょう:
set dummy t plot sin(t), cos(t) 書式: set dummy <仮変数名>{,<仮変数名>} show dummy 例: set dummy u,v set dummy ,s
前者は,仮変数を u と v に変更し,後者は,2番目の変数のみを(s に) 変更します.
`set parametric` コマンドも仮変数を変更します.(`plot` 用には t, `splot` 用には,u, v)
`set format`コマンドによって座標軸の刻み見出しの書式を指定することが できます.デフォルトではいずれの軸も "%g" を使います.しかし, "%.2f" や "%3.0fm" といった書式の方が好ましいことも多いでしょう.printf 関数が double 型の変数の書式として受け付けるものであって,かつ出力装置が受け 付けるものであればどのような指定をしても構いません.特に挙げると,f, e, g などは使えますが,d, o, x, c, s, u などは使えません.
書式: set format {<軸>} {"<書式文字列>"} show format
ここで,<軸> は `x`, `y`, `z`, `xy` のいずれかです.省略時は `xy` を 意味することになります.printf 関数によって置き換えられた後の文字列の 長さは 100 文字に制限されています.書式文字列を省略した場合は, デフォルトの "%g" に戻ります.LaTeX を使う場合には "$%g$" を指定すると よいでしょう.空の文字列 "" が指定された場合,刻み自身は表示されますが, 見出しは表示されないようになります.刻み自身を消す場合は,`set noxtics` や `set noytics` を使用して下さい.
刻みについてのより詳しい制御については,`set xtics` や `set ytics` も 参照して下さい.
`set function style` コマンドは関数描画の方法を変更します.
書式: set function style show function style set function style <描画方法>
最初の例では,`set function style` は可能な描画方法を表示します: `lines`, `points`, `linespoints`, `dots`, `steps`, `impulses`, `errorbars`, `boxes`, `boxerrorbars`. `show function style` は現在設定されている,関数の描画方法を表示します. `set function style linespoints` は実際に描画方法変更するように指 定します. `plot` も参照して下さい.
`show functions` コマンドはユーザーが定義した関数とその定義内容を表示 します.
書式: show functions
この,`set grid` によって刻みの位置に座標軸と同じ線で枠が描かれるよう になります.
書式: set grid set nogrid show grid
`set hidden3d` コマンドは明示的な面描画(`splot` 参照)での陰線処理を 行うように指示します.陰線処理は,陽関数と明示的なデータの描画に使う ことができます.媒介変数で表示される曲面に対しても動作します.
この機能が有効なときは,隠れた格子だけでなく,隠れた面の部分や隠れた 等高線(`set contour` 参照)も表示されません.見出しと矢印は常に表示される ので,この機能によって影響をうけることはありません.
同時に複数の面を描画した場合は,陰線処理は自らの曲面と他の曲面についても 行われます.この機能は,面が線(line style)で描画された時のみに意味が あります.
書式: set hidden3d set nohidden3d show hidden3d
孤立線は面を記述する2つの媒介変数のうちの1つを固定した時に現れる曲 線です.孤立線による表現は,面を表示する簡単な方法です.面 s(u,v) の 媒介変数 u を固定することによって,c(v) = s(u0,v) というu一定の線がで きます.また v を固定することによって,c(u) = s(u,v0) というv一定の線 ができます.
面の孤立線の密度は `set isosamples` コマンドで変更できます. デフォルトでは,サンプル数は u/v 軸につき 10 本の孤立線を引くように なってます.この数値を増やすことによってより正確な描画ができますが, 動作が遅くなります.なお,このパラメータはデータファイルの描画には何も 影響を与えません.
書式: set isosamples <式1> {,<式2>} show isosamples
各々の面描画は,<式1>本の u 孤立線と,<式2> 本の v 孤立線を表示するように なります.<式1>しか指定しなかった場合は,<式2>は<式1>と同じ値に設定されます.
面描画が隠線処理なしで行われた時は,`set samples` も,計算が行われる点の数に 影響を及ぼします.`set samples` を参照して下さい.
`set key` コマンドは描画された曲線の説明を表示すように指示します. デフォルトではこの説明はグラフの右上の角に表示されます.
書式: set key set key <x>,<y>{,<z>} set nokey show key
座標 <x>, <y>, (`splot` においては <z> も) は,この説明をどこに配置す るかを指定します.この説明は,1行に1曲線分ずつ曲線の数だけ表示されます. 各行には右側に曲線と同じ種類の直線が引かれ,その左側に `plot`コマンド から得られる文字列を表示します.この文字列を変更する方法については `plot title` を参照して下さい.これらの行は,架空の直線が説明の左側 (文字)と右側(直線)を分けるのように,垂直に整列されます.`set key` コマンドで指定するは,この直線の座標です.`plot` では,直線の位置を 指定するために x と y だけが使われ,`splot` では,架空線の2D画面上での 位置を作るためにグラフ描画と同じ変換を使って,3Dの位置として,x, y, z の全部が使われます.
場合によってはこの説明の一部または全部が境界の外にはみ出すこともあり ます.この場合見出しなどと重なってしまうこともあり,また出力装置によっ てはエラーを生じることもあります.
例: デフォルトの位置に説明を表示します: set key 説明を表示しなくします: set nokey 説明を (2, 3.5, 2) の位置に表示します: set key 2,3.5,2
`set label` コマンドを使うことによって任意の見出しをグラフ中に表示す ることができます.`plot` コマンド使用時には z 座標は無視されます. `splot` においてこれが指定されていないときは 0 であると仮定されます.
書式: set label {<タグ>} {"<見出し文字列>"} {at <x>,<y>{,<z>}} {<そろえ位置>} set nolabel {<タグ>} show label
文字列を省略した場合は "" であるとされます.位置を省略した場合は 0, 0, 0 であるとします.<x>, <y>, <z> は全て,グラフと同じ座標系で指定し ます.<タグ> は見出しを識別するための整数値です.<タグ> を指定しなかっ た場合未使用のもので最も小さい値のものが自動的に使われます.<タグ> は 特定の見出しを削除したり変更したりするのに使用できます.変更したい見 出しのタグ番号を使って,`set label` コマンドを使用し,変更したい項目 のみ指定して下さい.
デフォルトでは,指定した x, y, z の点に文字列の左端来るように配置され ます.これを変更する場合,<そろえ位置> を指定して下さい.<そろえ位値> としては,`left`, `right`, `center` のいずれかが指定できます.これらは それぞれ,指定した点に文字列の左,右,中央が来るように指定します.描 画領域からはみ出すような指定も許されますが,座標軸の見出しや他の文字列と 重なる場合があります.
例: (1,2) の位置に "y=x" と書く場合: set label "y=x" at 1,2 "y=x^2" をその右端が (2,3,4) に来て,タグ番号 3 を使いたい場合: set label 3 "y=x^2" at 2,3,4 right 先の見出しを中央ぞろえに変更したい場合: set label 3 center タグ番号 2 の見出しを削除する場合: set nolabel 2 全ての見出しを削除する場合: set nolabel 全ての見出しをタグ番号順に表示する場合: show label
(EEPIC と Imagen と LaTeX と TPIC 出力する場合は,文字列中に \\
を
入れることによって改行させることができます)
対数スケールは,x, y, z の各軸について設定できます.
書式: set logscale <軸> <底> set nologscale <軸> show logscale
ここで,<軸> は,`x`, `y`, `z` の任意の順序による組み合せが可能です. また,<底> は,対数スケールの底です.<底> が指定されなかった場合は, 10 になります.もし,<軸> が指定されなかった場合は,全部が指定された ことになります.`set logscale` コマンドが指定された軸の対数スケールを 有効にし,`set nologscale` で解除します.
例: x, z 両軸について対数スケールを設定する: set logscale xz y 軸について底2とする対数スケールを設定する: set logscale y 2 z 軸の対数スケールを解除する: set nologscale z
書式: set mapping { cartesian | spherical | cylindrical }
`splot` におけるデータは通常はユークリッド(Euclidean)空間でのカーテシ アン(Cartesian)座標系で与えられます.このような3次元データは(x,y,z) の3つの数値または z 座標のひとつの数値を1行に書くことによって与えら れます.`set mapping` コマンドを使うことによって,これを球(spherical) 座標系や円筒(cylindrical)座標系に変更することができます.いずれの場合 も,1行につき2つの数値を与えることになります. 球座標系の場合,これらは theta と phi (単位は `set angles` で指定したもの)で この場合
x = cos( theta ) * cos( phi ) y = sin( theta ) * cos( phi ) z = sin( phi )
と変換されます. 円柱座標系の場合,theta (単位は `set angles` で指定したもの)と z を与え,
x = cos( theta ) y = sin( theta ) z = z
と変換されます. なお,この `mapping` の機能はデータファイルの `splot` のみに影響する ことに留意して下さい.
グラフにおける描画素領域は `set offsets` によって,ある程度制御するこ とができます.このコマンドは,4つの引数(<左>, <右>, <上> , <下>)を とります.デフォルトでは,このオフセットは 0 です.各オフセットは 定数でも式でも構いません.左右のオフセットは x 軸と同じ単位で指定し, 上下のオフセットは y 軸と同じ単位で指定します.sin(x) をオフセット 0, 0, 2, 2 で表示させると,その曲線は表示される y の範囲の 1/3 を 占めます.オフセット機能は極座標を使う場合に縦横比を調整する上で特に 重宝します.`splot` ではオフセットは無視されます.
書式: set offsets <左>, <右>, <上> , <下> show offsets
デフォルトでは,グラフは標準出力に出力されます.`set output` コマンドは, 出力をファイルやデバイスにリダイレクトします.
書式: set output {"<ファイル名>"} show output
ファイル名は引用符に囲まれていなければなりません.ファイル名が与えら れなかった場合は,出力は標準出力に送られるようになります.
UNIX などの popen の機能を持ったいくつかのシステムにおいては,出力は シェルコマンドによって実行されたプログラムに対してパイプ経由で送るこ とができます.このためにはファイル名として '|' で始まるコマンドを与え て下さい.例を挙げます:
書式: set output "|lpr -Plaser filename" set output "|lp -dlaser filename"
(MSDOS ではファイル名として "prn" を指定すると標準のプリンタに出力す ることができます.)
`set paramaetric` コマンドは `plot` および `splot` の意味を通常の関数描 画から媒介変数表示(parametric)関数描画に変更します.`set noparametric` を使えば元の描画モードに戻ります.
2次元グラフにおいては,媒介変数表示関数はひとつの媒介変数に対する2 つの関数で定められます.例としては plot sin(t),cos(t) とすることによっ て円が描けます.
3次元グラフにおいては面は x = f(u,v), y = g(u,v), z = h(u,v) で定め られます.よって3つの関数を組で指定する必要があります.例としては, splot cos(u)*cos(v),cos(u)*sin(v),sin(u) とすることによって球面が描け ます.ひとつの曲線につき,2つの媒介変数に関する3つの関数が必要とな るわけです.
これによって表現できる関数群は,単純な f(x) 型の関数群の内包すること になります.なぜならば,2つ(3つ)の関数はx,y (,z)の値を独立に計算す る記述ができるからです.実際, t,f(t) ( u,v,f(u,v) ) のグラフは, 一番目の関数のような恒等関数を用いてxの値が計算される場合にf(x)に よって生成されるグラフと等価です.
媒介変数表示関数は,xの関数,yの関数 (,zの関数)の順に指定し,それら は共通の媒介変数およびその変域で定義されることに留意して下さい.
さらに,`set parametric` の指定は,新しい変数変域を使用することを暗に 宣言します.通常の f(x) や f(x,y) が xrange, yrange (, zrange) を使用 するのに対して,媒介変数モードではそれに加えて, trange, urange, vrange を使用します.これらの変域は `set trange`, `set urange`, `set vrange` によって指定することも,直接 `plot` や `splot` で指定すること もできます.現時点では,これらの媒介変数のデフォルトの変域は [-5:5] となっています.将来的にはこれらのデフォルト値をもっと有意なものに 変更する予定です.
`set ploar` コマンドはグラフの描画方法を直交座標系から極座標系に変更 します.極座標系では,仮変数 x は角度を表します.そしてその変域は それまでの設定値に関わらず, `set angles` の設定により [0:2*pi] (ラジアン),あるいは,度単位が選ばれていれば,[0:360] (度)に変更されます (`set angles` 参照).
`set nopolar` によって描画方法を元の直交座標系に戻します.x の変域は 強制的に [-10:10] に変更されます.
`set poloar` コマンドは `splot` には対応していません.`splot` に対す るこれに似た機能については `set mapping` を参照して下さい.
極座標モードの間は x の関数は r = f(x) を指定することになります. ここで x は回転角を表します.xrange によって角度の変域を指定し, yrange によって動径の変域を指定します.グラフは四角い領域の中に描画さ れ x 座標と y 座標の単位は動径と同じです.つまり,yrange が出力におけ る両方向の変域を定めることになります.軸方向の刻みは,左と下ではなく 座標軸上に刻まれることになります.これらの値は,`rrange` (`set rrange` 参照) で指定された <rmin> をオフセットとして持ちます.x 軸方 向と y 軸方向に異なる単位長を指定することはできません.yrange は第1 ないしは第3象限のみを表示するための指定にも使えます.
書式: set polar set nopolar show polar 例: set polar plot x*sin(x) plot [-2*pi:2*pi] [-3:3] x*sin(x)始めの例は 0 から 2 pi というデフォルトの角度変域を使います.動径と グラフの大きさは自動的に拡大縮小されます.2番目の例は仮変数の変域を 拡張して,動径方向の変域(とグラフの大きさ)を [-3:3] に制限しています.
`set rrange` コマンドは極(polar)座標モードでの x値,y値を求めるときの 動径方向の変域を指定します.極座標モードでないときは何の影響もありま せん.(`set polar` 参照) このコマンドを使うことによって極の中心におけ る値に <rmin> のオフセットを設定し,動径方向の単位を平行移動させます. 例えば,`set rrange [-40:40]` とすると,極の中心を -40 として,動径方 向に -40 から 40 の範囲の値を描画します.よって,360度分のデータを描 画すると中心から80単位分の距離のグラフとなります.グラフ全体を見渡す 場合は,`set yrange [-80:80]` とすることによって,正方形の描画領域が 設定され,円を描くと軸に接するようになります.xrange は角度の変域を定 める目的に使われるため,yrange の設定によって描画領域は必ず正方形にな ります.例えば `set yrange [0:80]` とすると第1象限が,`set yrange [-80:0]` とすると第3象限が表示されます.正方形でさえあればどのような 描画領域でも設定できますが,極の中心は必ず右上と左下を結ぶ45度線上に 来ることになります.
この rrange は,極座標モードであるときには `plot` コマンド中で直接指 定することもできます.
書式: set rrange [{<rmin> : <rmax>}]
<rmin> と <rmax> は定数または式です.
<rmin> と <rmax> は共に省略可能です.省略した部分はそれ以前の値のまま に留まります.よって
set rrange [:10]
とすると <rmax> を 10 にしますが,<rmin> は変更されません.
関数のサンプリング数は `set samples` コマンドで変更できます.デフォルト では,サンプル数は100点となっています.この値を増やすとより正確な描画が できるようになりますが,遅くなります.このパラメータは,データファイルの 描画には何の影響も与えません.
書式: set samples <式1> {,<式2>} show samples
2次元のグラフ描画が行われる時は,<式1>の値だけが関係します.
隠線処理なしで面描画が行われる時は,式の値は,孤立線毎に計算が行われる サンプル点の数を指定します.各,v 孤立線は<式1>個のサンプル点を持ち, 各 u 孤立線は<式2>個のサンプル点を持つようになります.<式1>しか指定しない 場合は,<式2>は<式1>と同じ値に設定されます. `set ispsamples` も参照して下さい.
`set size` コマンドはグラフの大きさを拡大縮小します.出力装置によって は大きさを変更すると文字の位置がずれることがあります.拡大を指定する とおかしな結果が得られることもあります.縮小は多くの場合うまくいきま す.
書式: set size {<xscale>,<yscale>} show size<xscale> と <yscale> は拡大係数です.省略時にはデフォルト値 (1,1) が 使用されます.
例: 通常の大きさに設定します: set size 通常の半分に設定します: set size 0.5,0.5 横長(landscape)グラフの極座標描画が縦横同縮尺になるように設定します: set size 0.721,1.0 現在設定されている大きさを表示します: show sizeLaTeX および Fig を出力装置としている場合,普通の大きさ(拡大係数 1,1)は 5 インチ幅の 3 インチ高です.big Fig (`bfig`) の場合は 7 インチ幅の 5 インチ高です.postscript では横長(landscape)モードで 10 インチ幅の 7 インチ高です. グラフの大きさは,軸や見出しを含んでいることに留意して下さい.グラ フ自身の描画領域はこれよりさらに小さくなります.
グラフは9種類の描画方法の中のいずれかで表示することができます: `lines`, `points`, `linespoints`, `impulses`, `dots`, `steps`, `errorbars`, `boxes`, `boxerrorbars`. `lines` は隣合う点を直線で結びます. `points` は各点の位置に小さなマーカを描きます. `linespoints` は `lines` と `pointes` の両方を行います. `impulses` はx 軸から各点へ垂線を引きます(`splot` に対しては格子の底から). `dots` は各点の位置に点を打ちます.多くの点の集合の散乱図などに適しています.
`errorbars` は2次元のデータファイルの `plot` でのみ使用できます. 関数の`plot` や `splot` で使われた場合は `points` として扱われます. データファイルの `plot` においては `errorbars` は,やはり `points` の様に 描かれますが,各点に鉛直な誤差指示線が加わる点が異なります.ある点 (x,y) に対して,誤差指示線が (x,ylow) から (x,yhigh) まで引かれます. 誤差指示線の両端には短い横線が描かれます.ylow と yhigh はデータファ イルの第3および第4引数が読み込まれます.`plot` の `using` オプション によって読み込む位置を変更することもできます.詳しくは `plot errorbars` を参照して下さい.
`boxes` は2次元のグラフでのみ利用できます.これは,与えられたx座標を 中心とし,x軸から与えられたy座標までの棒を描きます.棒の幅は3つの方法の うちのいずれか1つで得ます.もし,データファイルが第5列目を有していれば, これを棒の幅として使います.それ以外で,`set boxwidth` コマンドを使って幅が すでに設定されている場合は,これが使われます.それでもない場合には, 隣り合う棒と接するように各々の棒の幅が自動的に計算されます. `boxerrorbars` と呼ばれるもう1つのスタイルは,2次元のデータファイルからの グラフでのみ利用できます.このスタイルは `boxes` と `errorbars` スタイルの 組合せです.
`step` は2次元のグラフでのみ利用できます.このスタイルは連続する 点を2つの線分で結びます: 1つめは (x1, y1) から (x2, y1) 2つめは (x2, y1) から (x2, y2) です.
`plot` で指定されない場合は `set function style` および `set data style` の各コマンドで設定した方法で描画されます.この設定を各関数毎に 変更する方法については `plot style` を参照して下さい.
書式: set function style <描画方法> set data style <描画方法> show function style show data style
ここで <描画方法> は `lines`, `points`, `linespoints`, `impulses`, `dots`, `steps`, `errorbars`, `boxes`, `boxerrorbars` のいずれかです.
`set surface` によって面の表示を制御できます.等高線を単独で表示した いときに便利でしょう.`set nosurface` が実行されると面の孤立線や網は 引かれなくなります.`set contour` も参照して下さい.
書式: set surface set nosurface show surface
GNUPLOT は数多くのグラフィック装置をサポートしています.`set terminal` コマンドをつかって GNUPLOT の出力の対象となる装置の種類を選んで下さい.
書式: set terminal {<装置の種類>} show terminal
<装置の種類> が与えられなかった場合には,GNUPLOT は利用可能な端末装置 の一覧を表示します.<装置の種類> は短縮して構いません.
出力をファイルやデバイスにリダイレクトするときには `set output` を使 用して下さい.
いくつかの装置には追加的なオプションがあります.例えば,`dumb`, `iris4d`, `hpljii`, `postscript` などを参照して下さい.
Adobe Illustrator 3.0 ドライバは多くのオプションを受け付けます.
書式: set terminal aifm {<color>} {"<fontname>"} {<fontsize>}
`default` を指定すると全てのオプションをデフォルトの値に戻します. <color> は `color` か `monochrome` のいずれか. "<fontname>" 有効な PostScript フォントの名前. <fontsize> は PostScript のポイント単位でのフォントの大きさ.ここで設 定する値は `set size` コマンドで拡大縮小される前の大きさ. デフォルトの値は `monochrome`, "Courier", 14pt です.
さらに,AI は複数ページを扱えないので複数のグラフを出力した場合は次々 に重なるようになっていますが,各々のグラフはグループ化されていますか ら AI の中で拾いあげて移動することによって分離できるようになっていま す.
例: set term aifm set term aifm 22 set size 0.7,1.4 set term aifm color "Times-Roman" 14
`atari` 端末は文字サイズと画面色を設定するオプションを持っています. ドライバは,空白で区切られた,文字サイズと,赤,緑,青を表現する 16進の3桁の数字(最大16個)のリストを期待しています.0-15 の範囲は 実際に画面が有している色の範囲にあわせて調整されます.通常のSTの画面では, 奇数と偶数の強度は同じです.
例: set terminal atari 4 # (小さな (6x6) フォントを使います) set terminal atari 6 0 # (モノクロ画面を黒地に白に設定します) set terminal atari 13 0 fff f00 f0 f ff f0f ff0 # (最初の8つの色を,黒,白,緑,青,シアン,紫,黄 に設定し,\ 大きな (8x16) フォントを使います)
さらに,環境変数 GNUCOLORS が存在する場合は,その内容をオプションの 文字列として解釈します.しかし,陽に terminal オプションを設定の方が 優先します.
ダム(dumb)端末ドライバはオプションでサイズを指定できます.
書式: set terminal dumb {<xsize> <ysize>}
ここで <xsize> と <ysize> はダム端末のサイズを指定します. デフォルト値は 79×24 です.
例: set term dumb set term dumb 79 49 # VGA screen--why would anyone want to do that?
このドライバの組は,Epsonのプリンタとその派生に対応しています. NEC ドライバも参照して下さい.`epson` は,解像度512x384の一般的な9ワイヤの プリンタです.`starc` は,同じ解像度のStar Colorプリンタです. `epson180` と `epson60` は,もっと新しい24ワイヤプリンタのための, 180dpi と 60dpi のドライバです.これは,バブルジェットプリンタも 含んでいます.これらの解像度は,それぞれ,1260x1080 と 480x360 です. `tandy60` は `epson60` と同一ですが,IBMモードを始めるというエスケープ シーケンスが追加されています.これらのドライバの全てでは,印刷するために PC上でバイナリコピーすることが必要です.`print` を使ってはいけません.
copy file /b lpt1:
このドライバは,Free Software Foundation の gpic/groff パッケージで 作動することがわかっているだけです.Document Workbench の pic/troff パッケージのための改良していただければありがたく思います. FSF の gpic は TeX 用の出力を生成することもできます.
以下のようなコマンドを使って,簡単なグラフをフォーマットすることができます.
groff -p -mpic -Tps file.pic > file.ps.
pic からの出力は eqn へパイプでつなげることができますので,set label や set {x/y} label コマンドを使って,グラフの中に複雑な関数を置くことができます. 例えば,
set ylab '@space 0 int from 0 to x alpha ( t ) roman d t@'
として,以下のようなコマンドでフォーマットすると,きれいな積分の ラベルを y 軸に付けきます.
gpic filename.pic | geqn -d@@ -Tps | groff -m[macro-package] -Tps > filename.ps
この方法で作った図は,文書に合うように大きさを調整することができます. pic 言語を理解するのは簡単ですから,必要ならばグラフを手で編集することが できます.gnuplotが生成したpicファイルの中の全ての座標値は,x+gnuplotx と y+gnuploty で与えられます.デフォルトでは,x と y には0が与えられます. エディタでいくつものファイルの中のこの行を取り除けば,次のように 1つの図の中にいくつものグラフを置くことができます(デフォルトの大きさは 5.0x3.0インチです).
.PS 8.0 x=0;y=3 copy "figa.pic" x=5;y=3 copy "figb.pic" x=0;y=0 copy "figc.pic" x=5;y=0 copy "figd.pic" .PE
これは,2列で各々の上部に置かれた4つのグラフを含む8インチ幅の図を生成します.
次のコマンドによって,同じものを得ることもできます.
set term pic x y
例えば,
.PS 6.0 copy "trig.pic" .PE
を使います.
HP LaserJet II と HP DeskJet のドライバには1つオプションがあります.
書式: set terminal hpljii {<解像度>} set terminal hpdj {<解像度>}
ここで <解像度> は出力解像度を1インチ当りのドット数(dpi)で指定します. 値は `75`, `100`, `150`, `300` のいずれかでなければなりません. 注意: 高解像度で表現(rasterize)できるようにするには十分にメモリが なければなりません.
例: set terminal hpljii 150
LaTeX と EMTeX ドライバでは,gnuplot のグラフの周りのラベルにフォントの種類と フォントの大きさを指定することができます.
オプションは指定する任意のサイズの
フォント: default (Roman 10 point) courier roman
です(METAFONT は変な(odd)サイズを好まないことに気を付けて下さい).例えば,
gnuplot> set term latex courier 5
使っているドライバが(dvipsのように)任意のサイズのフォントを作ることが できないのならば,標準的な10, 11, 12 ポイントのサイズにしておいて下さい.
iris4d ドライバには 2 つの動作モードがあります.
書式: set terminal iris4d {24}
もしもハードウェアが 8 ビットしかサポートしていない場合は,デフォルト の `set terminal iris4d` を使って下さい.もし,ハードウェアが 24 ビッ ト(RGB に対してそれぞれ 8 ビット)をサポートしている場合は, `set terminal iris4d 24` を使って下さい.
24 ビットモードのときは色を .gnuplot_iris4d というファイルで直接指定 することができます.このファイルは,まずカレントディレクトリから探さ れ,次に環境変数HOMEで指定されるホームディレクトリから探されます.こ のファイルには,背景,境界(border),ラベル(label),9 つの描画色の RGB の値をこの順で書いておきます.例として,デフォルトの色を指定する ファイルを挙げておきます.
85 85 85 /* Back Ground */ 0 0 0 /* Boundary */ 170 0 170 /* Labeling */ 85 255 255 /* Plot Color 1 */ 170 0 0 /* Plot Color 2 */ 0 170 0 /* Plot Color 3 */ 255 85 255 /* Plot Color 4 */ 255 255 85 /* Plot Color 5 */ 255 85 85 /* Plot Color 6 */ 85 255 85 /* Plot Color 7 */ 0 170 170 /* Plot Color 8 */ 170 170 0 /* Plot Color 9 */
このファイルは正確に 12 行あり,各行に RGB の 3 つ組があります.空行 があってはいけませんし,3 番目の数の後ろにあるものはすべて無視されま す.
`mf` 端末ドライバは,METAFONT プログラムへの入力ファイルを作ります. したがって,TeXの文書の中で図を文字と同じ方法で使うことができます.
文書の中でグラフを使うには,gnuplotからの出力ファイルを入力として METAFONTプログラムを実行しなければなりません.したがって,ユーザには, フォント作成プロセスについてと文書の中への新しいフォントの組み込みに ついての基本的な知識が要求されます.しかし,METAFONTプログラムがローカル サイトで適切に設定されていれば,経験の無いユーザでもあまりトラブル無く 操作できるでしょう.
テキストのサポートはMETAFONTの文字セットに基づいています. 現状では,Computer Modern Roman フォントセットが入力ですが, 原則として,ユーザは必要なフォントを何でも自由に選んで構いません. 選んだフォント用のMETAFONTのソースファイルは使えるようになっていなければ なりません.各々の文字はMETAFONTの中で別々のピクチャー変数に格納されます. 文字が必要な時は,これらの変数を操作(回転,伸縮など)することができます. 欠点は,METAFONTプログラムの解釈に要する時間です.ある計算機(つまりPC)では, 絵がたくさん格納されていると,使うことのできるメモリの量の上限が問題を 引き起こします.
例で説明します.
- terminal をMETAFONTに設定します. set terminal mf - 出力ファイルを選択します. set output "myfigures.mf" - グラフを描きます.各々のグラフが別々の文字を生成します. そのデフォルトの大きさは 5×3 インチです.set size 0.5, 0.5 とか, デフォルトに対する希望のどんな割合にでも大きさを変更することができます. - gnuplot を終ります. - gnuplot の出力に対してMETAFONTを実行することによって,tfmファイルと gfファイルを生成します.グラフはかなり大きいので(5×3インチ),memmax の値が 少なくとも150000であるMETAFONTのバージョンを使う必要があります. UNIX システムでは,これらは慣習として bigmf という名前でインストール されています.以下では,virmf コマンドは big バージョン表していると 仮定します.例えば: - METAFONT を呼び出します: virmf '&plain' - 出力装置を選びます: METAFONT のプロンプト('*')のところで次のように 打ちます. \mode:=CanonCX; % または貴方の使うプリンタ - 拡大率(magnification)をオプションで選択します: mag:=1; % 貴方の望みの値で - gnuplotで作ったファイルを入力します: input myfigures.mf 典型的なUNIXマシンでは,たいていmfと呼ばれる,virmf '&plain' を実行する スクリプトがあるので,virmf &plain の代わりに mfを使うことができます. これは,mfput.tfm と mfput.$$$gf ($$$は装置の解像度を示す) という 2つの ファイルを生成します.上の例は,全てをコマンドラインで打ってしまうことに よって,簡便に達成することもできます.例えば: virmf '&plain' '\mode:=CanonCX; mag:=1; input myfigures.mf' この場合,出力ファイルは myfigures.tfm と myfigures.300gf という 名前になります. - gftopk を使って,gfファイルからmfファイルを生成する: gftopk myfigures.300gf myfigures.300pk gftopkの出力ファイルの名前は,使っているdviドライバに依存します.貴方の ローカルなTeXの管理者に命名の慣習について尋ねて下さい. 次に,tfmファイルとpkファイルを適切なディレクトリにインストールするか, 環境変数を適切に設定します.たいてい,これは TEXFONTS にカレントディレクトリ を含めるように設定することを意味しています.同じことを貴方のdviドライバが使う 環境変数(標準的な名前はありませんが...)にも行って下さい. このステップは,TeX がフォントメトリックファイルを見つけられるようにし, dvi ドライバが pk ファイルを見つけられるようにするために必要です. - グラフを文書の中に含めるために,TeXにフォントを教える必要があります: \font\gnufigs=myfigures 貴方の作った各々のファイルは,1つ1つ文字として収められています.1番目の 図は文字0,2番目は文字1,などなどです.以上のステップを行った後には, 他の文字と全く同じようにグラフを使うことができます.したがって,文書の中に グラフ1と2をセンタリングして置くために,plain TeXですべきことは: \centerline{\gnufigs\char0} \centerline{\gnufigs\char1} です.もちろん,LaTeX では,picture環境を使い,\makebox と \put マクロを 使って,あなたの望み次第にグラフを配置することができます. TeXは,グラフを文字として扱い,それを配置するには最小の時間しか 使わないので,一度フォントを生成してしまえば,大幅に時間の節約になります. また,グラフに比べて,文書はしばしば変更するものですし,TeXのメモリも 大幅に節約します.METAFONTドライバを使う,最後の1つの利点は,dviファイルが 本当にデバイス依存しないままであるということです.なぜなら,eepicやtpicの ドライバのような \special コマンドを全く使っていないからです.
MIF 3.0 ドライバでは,いくつものオプションを設定できます.
書式: set terminal mif {<pentype>} {<curvetype>} {<help>} <pentype> はグラフィックスの "色" を選択します. `colour` 線種 >= 0 をカラーで描画します (MIF sep. 2-7). `monochrome` 全ての線種を黒で描画します (MIF sep. 0). <curvetype> は,"曲線" をどのように描くか選択します. `polyline` 曲線を連続直線として描きます. `vectors` 曲線をベクトルの集まりとして描きます. <help> は標準エラー出力にオンラインヘルプを表示します. `help` 使い方とオプションについての短い記述を表示します. `?` 使い方についての短い記述を表示します.
このターミナルドライバは,Frame Maker の MIF フォーマットバージョン3.00 を 生成します.これは,大きさ15×10 [cm] の MIF フレーム の中にグラフを描き, 同じペンで描かれたグラフの基本要素は,同じMIF グループの中でグループ化 されます.グラフの基本要素は1つのMIF フレームの中に描画され,いくつかの MIF フレームは,1つの大きなMIF フレームの中に集められます. 線種 >= 0 のグラフの基本要素は,デフォルトではカラーで描かれます. また,デフォルトでは曲線は連続直線として描かれます.テキストに使われる MIF のフォントは "Times" です.
例: set term mif set term mif vectors set term mif help
`nec-cp6` ドライバは1つのオプションを持っています.このドライバの解像度は 400x320です.
書式: set terminal nec-cp6 monochrome set terminal nec-cp6 color set terminal nec-cp6 draft
PBMplus ドライバは多くのオプションを受け付けます.
書式: set terminal pbm {<fontsize>} {<colormode>}
ここで <fontsize> は `small`, `medium`, `large` のいずれかです. また,<colormode>は `monochrome`, `gray`, `color` のいずれかです. デフォルトの大きさは幅 640 点,高さ 480 点あります. `monochrome` の出力は ポータブルビットマップです. (1 点当り 1 ビット) `color` の出力はポータブルフグレーマップです. (1 点当り 3 ビット) `gray` の出力はポータブルピックスマップです.(カラーで 1 点当り 4 ビット) これらの出力は Jef Poskanzer's excellent PBMPLUS package で利用可能で これによって上記の PBMPLUS フォーマットから GIF, TIFF, MacPaint, Macintosh PICT, PCX, X11 を始めとする多くのビットマップフォーマットに 変換できます.
例: set term pbm small set size 2,2 set term pbm color medium
`pcl5` ドライバでは,3つのオプションを設定することができます. このドライバは実際には HPGL-2 を使っていますが,端末装置の中で 衝突している名前があります.
書式: set terminal pcl5 {<mode>} {<font>} {<fontsize>}
ここで,<mode> は `landscape` か `portrait` です.<font> は `stick` か `univers` か `cg_times` です.また,<fontsize> はポイント単位です.
set terminal pcl5 landscape
PostScript ドライバは多くのオプションを受け付けます.
書式: set terminal postscript {<mode>} {<color>} {<dashed>} {"<fontname>"} {<fontsize>}
ここで <mode> は `landscape`, `portrait`, `default` のいずれか. `default` を指定すると全てのオプションをデフォルトの状態に戻します. <color> は `color` か `monochrome` のいずれか. <dashed> は `solid` か `dashed` のいずれか. "<fontname>" は有効な PostScript フォントの名前. <fontsize> は PostScript のポイント単位でのフォントの大きさ. デフォルトの値は `landscape`, `monochrome`, "Courier", 14pt です. Postscript に出力する際の普通の大きさは 10 インチ幅の 7 インチ高です.
EPS を出力する場合は,`eps` モードを使用し,ひとつのファイルにつきひ とつのグラフのみを出力して下さい.EPS モードでは全ての描画は半分の 大きさになります.フォントの大きさは指定値の半分になりますし,描画領 域も 5 インチ幅の 3.5 インチ高になります.
例: set term postscript default # 旧 postscript set term postscript landscape 22 # 旧 psbig set term postscript eps 14 # 旧 epsf1 set term postscript eps 22 # 旧 epsf2 set size 0.7,1.4 set term post portrait color "Times-Roman" 14
"Enhanced PostScript" ドライバは,正規のPostScriptドライバを越える 拡張された機能を持っています.このEnhanced PostScriptドライバは, 多くのオプションを受け付けます.
書式: set terminal enhpost {<mode>} {<color>} {<dashed>} {<duplexing>} {"<fontname>"} {<fontsize>}
ここで <mode> は `landscape`, `portrait`, `default` のいずれか. `default` を指定すると全てのオプションをデフォルトの状態に戻します. <color> は `color` か `monochrome` のいずれか. <dashed> は `solid` か `dashed` のいずれか. <duplexing> は `simplex` か `duplex` のいずれか (プリンタにこの機能が ない場合には,これを指定しないで下さい). <fontsize> は PostScript のポイント単位でのフォントの大きさ. デフォルトの値は `landscape`, `monochrome`, `dashed`, 'printer-default-plex', "Helvetica", 14pt です. Enhanced PostScript が出力するデフォルトの大きさは,横長で10 インチ幅, 7 インチ高です.
EPS の出力を得るためには,`eps` モードを使用し,ひとつのファイルにつき ひととつのグラフのみを出力して下さい.EPS モードでは全ての描画は半分の 大きさになります.フォントの大きさは指定値の半分になりますし,描画領 域も 5 インチ幅 3.5 インチ高になります.
例: set term enhpost landscape 22 set term enhpost eps 14 set term enhpost landscape simplex set size 0.7,1.4 set term enhpost portrait color "Times-Roman" 14
この "強化" ドライバは,任意のテキストに以下のような特別な書式命令を 含めることができます (たとえば,軸のメモリにそれらの命令を入れるには, SET FORMAT コマンドを使います).
制御文字 例 説明 ^ a^x 上付き文字 _ a_x 下付き文字 @ @x or a@^b_c 空ボックス (幅を占めない)
1文字だけが来ることが期待されている所で,{text}と書くと複数文字の テキストを使うことができます(例えば,2^{10}).書体や大きさを変更するには, {/[fontname][=fontsize] text} という形式を使って下さい (例えば, {/Symbol=20 G}は20ポイントのΓです).('/'は'{'の後の最初の文字でなければ いけません).
空ボックス(phantom box)は,上付き文字と下付き文字をそろえたり(a@^b_c), 文字の上にアクセントを重ね書きしたりするために便利です.2つの短い方が 空ボックスの中に置かれるというのが共通の意味です.
文字コード (8進数)を指定することで,特殊なシンボルに番号でアクセスできます. 例えば,{/Symbol \245} は無限大記号です.
制御文字は,\を使ってエスケープします.例えば,
\\, \{, \}, \^, \@
4 regis
`regis` 端末装置は,4色か16色を使うオプションを持っています.
デフォルトは4です.
例: set term regis 16
装置の種類を `table` にすると,グラフを描画する代わりに式の評価結果を X,Y,Z の値として ASCII 文字でマルチカラム出力します.絵ではなく数字 を見たい場合,このドライバを使うことによって数値を画面やファイルに出 力することができます.
Windows のドライバでは3つのオプションを設定することができます.
書式: set terminal windows {<color>} {"<fontname>"} {<fontsize>}
`<color>` は `color` か `monochrome` のどちらかです. `"<fontname>"` は有効なWnindows のフォントの名前です. `<fontsize>` は,ポイント単位のフォントの大きさです.
`gnuplot graph` ウィンドウには,ポップアップメニューに次のような オプションがあります.これを利用するには,マウスの右ボタンを押すか, システムメニューから `Options` を選択します.
`Bring to Top` に印を付けると,全て他のグラフのよりグラフウィンドウを 前面に出します.
`Color` に印を付けると,線種がカラーになります. 印がついていないと,線種はモノクロになります.
`Copy to Clipboard` は,ビットマップやメタファイルの絵をコピーします.
`Background...` は,ウィンドウの背景色を設定します.
`Choose Font...` は,グラフィックウィンドウで使うフォントを選択します.
`Line Styles...` で,線の色と種類を調整することができます.
`Print...` は,Windows のプリンタドライバを使ってグラフィックウィンドウを 印刷します.プリンタと出力の拡大率を選択することができます.`Print` で 生成された出力は,gnuplot 自身のプリンタドライバの出力ほど良くありません.
`Update wgnuplot.ini` は,現在の,ウィンドウの位置,ウインドウの大きさ, テキストウィンドウのフォント,テキストウィンドウのフォントの大きさ, グラフィックウィンドウのフォント,グラフィックウィンドウの大きさ, 背景色,線種 を初期化ファイル `WGNUPLOT.INI` に保存します.
お好みによって,以下のような方法でグラフを印刷することができます.
`gnuplot text` ウィンドウには,ポップアップメニューに次のような オプションがあります.これを利用するには,マウスの右ボタンを押すか, システムメニューから `Options` を選択します.
`Copy to Clipboard` は,マークしたテキストをクリップボードにコピーします.
`Paste` は,ユーザが打ち込んだのと同じように,クリップボードからテキストを コピーします.
`Choose Font...` は,テキストウィンドウで使うフォントを選びます.
`System Colors` を選んだ時は,テキストウィンドウにコントロール パネルを使って設定したシステムカラーを与えます.選択しない時は, 白い背景で,文字は黒か青になります.
`Update wgnuplot.ini` は,現在の,ウィンドウの位置,ウインドウの大きさ, テキストウィンドウのフォント,テキストウィンドウのフォントの大きさを 初期化ファイル `WGNUPLOT.INI` に保存します.
`MENU BAR`
メニューファイル `WGNUPLOT.MNU` が,WGNUPLOT.EXE と同じディレクトリに ある場合には,`WGNUPLOT.MNU` に記述されたメニューが読み込まれます.
メニューコマンドは以下の通りです:
[Menu] 次の行の名前で新しいメニューを始めます. [EndMenu] 現在のメニューを終ります. -- 水平なメニュー仕切りを入れます. | 垂直なメニュー仕切りを入れます. [Button] メニューに入れる押しボタンに次のマクロを置きます.
マクロには2行を使います.1行目がマクロの名前で(メニューの見出し), 2行目がマクロです.前の空白は無視されます.
マクロコマンドは以下の通りです:
[INPUT] [EOS] か {ENTER} で終るプロンプトを出して,文字列を入力します. [EOS] 文字列の終りを意味するターミネータ.何も出力しません. [OPEN] リストボックスからオープンするファイル名を得ます. [EOS] で終るリストボックスの表題と, その後に [EOS] か {ENTER} で終るデフォルトのファイル名が 付きます.これは,Windows 3.1 の COMMDLG.DLL を使っています. [SAVE] 保存するファイル名を得ます.[OPEN] とほぼ同じです.
マクロの文字の代用は次の通りです:
{ENTER} 復帰 '\r' {TAB} タブ '\011' {ESC} エスケープ '\033' {^A} '\001' ... {^_} '\031'
マクロは展開後256文字までに制限されています.
Windows gnuplot は,Windowsのディレクトリの `WGNUPLOT.INI` セクションの `[WGNUPLOT]` からオプションのいくつかを読み込みます.`WGNUPLOT.INI` ファイルの例を下に示します.
[WGNUPLOT] TextOrigin=0 0 TextSize=640 150 TextFont=Terminal,9 GraphOrigin=0 150 GraphSize=640 330 GraphFont=Arial,10 GraphColor=1 GraphToTop=1 GraphBackground=255 255 255 Border=0 0 0 0 0 Axis=192 192 192 2 2 Line1=0 0 255 0 0 Line2=0 255 0 0 1 Line3=255 0 0 0 2 Line4=255 0 255 0 3 Line5=0 0 128 0 4
`GraphFont` エントリは,フォントの名前とポイント単位のサイズを指定します. `Border` と `Axis` と `Line` エントリの5つの数は,`赤` の強度(0-255) `緑` の強度,`青` の強度,`カラーの線種`,`モノクロの線種` を与えています. `線種` は 0=実線,1=鎖線,2=点線,3=1点鎖線,4=2点鎖線 です. 上の `WGNUPLOT.INI` ファイルの例では,線2 はカラーモードでは緑の実線で, モノクロモードでは鎖線です.デフォルトの線幅は1ピクセルです. `Linestyle` が負の場合は,実線の線幅をピクセル単位で指定します. 線1 と `points` スタイルで使われる線種は実線で1ピクセル幅でなければ なりません.
Windows 3.1 の方が良いのですが,以下のような制限付きで,Windows 3.0 の下でも WGNUPLOT は動作します.
デフォルトでは,刻みは境界の枠の 4 辺全てからグラフの内側に向かって 描かれます.`set tics` コマンドによって,刻みを外側に向かって,かつ, 左と下にのみに表示するように変更できます.この機能は,インパルス (impulse)で描画する際に便利です.
書式: set tics {<方向>} show tics
ここで <方向> は,`in` か `out` のいずれかです.`set tics` だけでは `in` になります.
刻みの制御に関しては `set xtics`, `set ytics`, `set ztics` の各コマンド についても参照して下さい. splot をつかった3次元グラフでは,`set ticslevel` を使って,鉛直(Z)軸 の相対的な高さを調整することができます.指定した数値引数はグラフの底 の位置を指定します.ゼロを指定すると x/y 軸のある底面になり,正の数を 指定すると z 軸上のどこかになります.
書式: set ticslevel {<位置>} show tics
ここで <位置> は非負の数値です.例えば
set ticslevel 0.5
によってデフォルトの値になります.
`set view` も参照して下さい.
`set time` を使うことによってグラフの上辺または下辺に日付と時刻を入れ ることができます.具体的な場所は出力装置に依存します.
書式: set time {<xoff>}{,<yoff>} set notime show time
定数 <xoff> または <yoff> を追加することによって日時表示を文字座標系 で指定したオフセット分だけ動かすことができます.
例: set time ,-3
とすると,文字の高さの約3倍分下方向に移動することができます.
`set title` コマンドはグラフの題名を上辺に中央ぞろえで出力します.オ プションの x, y のオフセットを指定するとその分だけ位置をずらすことが できます.これによって任意の位置に題名を表示することができます.`set title` と何も指定せずに使用すると題名の表示をしなくなります.
書式: set title {"<題名文字列>"} {<xoff>}{,<yoff>} show title
オプション定数 <xoff>, <yoff> をオフセットとして指定すると指定した文 字分だけ位置を動かすことができます.これはグラフの座標系ではなく文字 座標系の文字数で指定します.例えば,
set title ,-1
とすると題名を下方向に約1文字分ずらすことになります.
(EEPIC と Imagen とLaTeX と TPIC に出力する場合は,文字列中に \\ を 入れることによって改行させることができます)
`set trange` コマンドは媒介変数(parametric)モードのときに,x値,y値を 求めるときの媒介変数の変域を指定します.媒介変数モードでない時何の影 響もありません.(`set parametric` 参照) このコマンドによって x/y の自 動縮尺機能や x/y の変域が影響をうけることはありません.
この変域は媒介変数モードのときには `plot` コマンド中で指定することも できます.
書式: set trange [{<tmin> : <tmax>}]
ここで,<tmin> と <tmax> は,定数または式です.
<tmin> と <tmax> は共に省略可能です.省略されたものは変更されません. よって
set trange [:10]
によって tmax は 10 になりますが tmin は変わりません.`set urange` と `set parametric` も参照して下さい.
`set urange` と `set vrange` の各コマンドは媒介変数(parametric)モード において `splot` で x値,y値,z値を計算するのに使う媒介変数の変域を指 定します.媒介変数モードでない時何の影響もありません.(`set parametric` 参照) このコマンドによって x/y の自動縮尺機能や x/y の変 域が影響をうけることはありません.
この変域は媒介変数モードのときには `splot` コマンド中で指定することも できます.詳しくは `plot` を参照して下さい.
書式: set urange [{<umin> : <umax>}]
ここで,<umin> と <umax> は,定数または式です.
<umin> と <umax> は共に省略可能です.省略されたものは変更されません. よって
set urange [:1]によって umax は 10 になりますが umin は変わりません.`set trange` も 参照して下さい.
`show variables` コマンドは全てのユーザ定義変数とその値のの一覧を表示 します.
書式: show variables
`set view` コマンドは `splot` における視点を指定します.このコマンド によって3次元座標系のグラフがどのように2次元の画面に投影されるかを 制御します.このコマンドによって回転と拡大縮小を行うことができますが 射影方法は正射影のみ用意されています.
書式: set view <rot_x> {,{<rot_z>}{,{<scale>}{,<scale_z>}}} show view
ここで, <rot_x> と <rot_z> は仮想的な3次元座標系の軸に対する回転角 を度で指定します.これは画面水平方向を x 軸,鉛直方向を y 軸,そして, 画面に対して垂直な方向を z 軸としています.<rot_x> は [0:180] の範囲 で指定でき,デフォルトの値は 60 度です.<rot_z> は [0:360] の範囲で 指定でき,デフォルトの値は 30 度です.<scale> は `splot` 全体の縮尺を 決め, <scale_z> は z 軸方向のみに対する縮尺を決めます.これらの デフォルトの値は共に 1.0 です.
例: set view 60, 30, 1, 1 set view ,,0.5
前者は全ての値をデフォルトの値にしています.後者は全体の縮尺のみを 0.5 に設定しています.
`set ticslevel` も参照して下さい.
`set vrange` コマンドは `set urange` コマンドとほぼ同じです.`set urange` を参照して下さい.
`set xlabel` コマンドは x 軸の見出しを軸の中央にそろえて表示します. オプションの x,y オフセットを指定することによって任意の位置に表示す ることもできます.引数なしに `set xlabel` を実行すると見出しを表示し なくなります.
書式: set xlabel {"<label>"} {<xoff>}{,<yoff>} show xlabel
オプション定数 <xoff>, <yoff> をオフセットとして指定すると指定した文 字分だけ位置を動かすことができます.これはグラフの座標系ではなく文字 座標系の文字数で指定します.例えば,
set xlabel -1
とすると題名を左方向に約1文字分ずらすことになります.
(EEPIC と Imagen とLaTeX と TPIC に出力する場合は,文字列中に \\ を 入れることによって改行させることができます)
`set xrange` コマンドは表示される水平方向の変域を指定します.このコマ ンドを実行すると x 軸に対する自動縮尺機能(autoscaling)が解除されます.
この変域は `plot` コマンド中で直接指定することもできます.
書式: set xrange [{<xmin> : <xmax>}]ここで,<xmin> と <xmax> は,定数または式です.
<xmin> と <xmax> は共に省略可能です.省略されたものは変更されません. よって
set xrange [:10]によって xmax は 10 になりますが xmin は変わりません.
`set xtics` コマンドによって,x 軸の刻みの細かい制御が可能です.`set noxtics` コマンドによって刻みを表示させなくすることができます.`set xtics` によってデフォルトの状態である刻みを表示する状態に戻ります.
書式: set xtics { {<開始値>, <増分>{, <終値>}} | {({"<見出し>"} <位置> {, {"<見出し>"} <位置>}...)} } set noxtics show xtics
<開始値>, <増分>, <終値> によって指定した場合は,<開始値> から <終値> の間にある x の値について <増分> 毎に刻みを入れます.<終値> を指定し なかった場合,無限大が指定されたものとされます.<増分> は負の値でも構 いません.この書式による例をあげます:
set xtics 0,.5,10とすれば, 0, 0.5, 1, 1.5, ..., 9.5, 10 の位置に刻みを入れます.
("<見出し>" <位置>, ...) 形式の指定では任意の位置に刻みを入れたり,刻 みに数値でない見出しを入れたるすることを可能にします.1組の刻は,各々 省略可能な見出し文字列を伴った数値の組で表されます.見出しは引用符に 囲まれた文字列で,"hello" の様な定文字列でも,"%3f clients" の様な刻 の位置の座標値に対する書式指定を含む文字列でも構いません.このような 書式指定についてのより詳しい説明については `set format` を参照してく ださい.なお見出し文字列は空文字列でも構いません.
例: set xtics ("low" 0, "medium" 50, "high" 100) set xtics (1,2,4,8,16,32,64,128,256,512,1024) set xtics ("bottom" 0, "" 10, "top" 20)
刻は表示領域内に存在する時のみ表示されます.
`set ytics`, `set noytics` コマンドも全く同様に動作します.`set format` も参照して下さい.
`set xdtics` コマンドは,x 軸の目盛のマークを曜日に変換します(0=Sun, 6=Sat). 溢れた場合は,7による剰余を曜日に変換します.
例: set xdtics
x 軸の目盛を曜日に設定します.
`set ydtics` や `set zdtics` や `set noydtics` や `set nozdtics` コマンドも 同じように働きます. `set format` コマンドも参照して下さい.
`set xmtics` コマンドは,x軸の目盛のマークを月名に変換します(1=Jan, 12=Dec). 溢れる場合は,12による剰余+1 を月名に変換します.
例: set xmtics
x 軸の目盛を月名に変換します.
`set ymtics` や `set zmtics` や `set noymtics` や `set nozmtics`コマンドも 同じように働きます. `set format` コマンドも参照して下さい.
`set xzeroaxis` コマンドは x 軸を描画します.デフォルトでは軸は表示されます. `set noxzerozxis` コマンドは x 軸を描画しないように指示します.
書式: set xzeroaxis set noxzeroaxis show xzeroaxis
`set ylabel` コマンドは y 軸の見出しを設定します.この見出しがどこに 表示されるかは出力装置に依存し,以下の3つのいずれかになります.また この位置は省略可能な引数によって移動することもできます.
書式: set ylabel {"<label>"} {<xoff>}{,<yoff>} show ylabel何も文字列を指定しないと見出しは表示されなくなります.オプション定数 <xoff>, <yoff> をオフセットとして指定すると指定した文字分だけ位置を動 かすことができます.これはグラフの座標系ではなく文字座標系の文字数で 指定します.例えば,
書式: set ylabel {"<label>"} {<xoff>}{,<yoff>} show ylabel何も文字列を指定しないと見出しは表示されなくなります.オプション定数 <xoff>, <yoff> をオフセットとして指定すると指定した文字分だけ位置を動 かすことができます.これはグラフの座標系ではなく文字座標系の文字数で 指定します.例えば,
set ylabel -1とすると,y 軸見出しの x オフセットだけを変更することになります.この 場合,デフォルトの位置から左側に約1文字分移動することになります. この機能は LaTeX 用のドライバで特に便利に使えるでしょう.
(EEPIC と Imagen とLaTeX と TPIC に出力する場合は,文字列中に \\ を 入れることによって改行させることができます)
`set yrange` コマンドは表示される鉛直方向の変域を指定します.このコマ ンドを実行すると y 軸に対する自動縮尺機能(autoscaling)が解除されます.
この変域は `plot` コマンド中で直接指定することもできます.
書式: set yrange [{<ymin> : <ymax>}]
ここで,<ymin> と <ymax> は,定数または式です.
<ymin> と <ymax> は共に省略可能です.省略されたものは変更されません. よって
set yrange [:10]によって ymax は 10 になりますが ymin は変わりません.
`set ytics` と `set noytics` の両コマンドは `set xtics`,`set noxtics` の 各コマンドとほぼ同じです.`set xtics` を参照して下さい.
`set ydtics` と `set noydtics` コマンドは `set xdtics`,`set noxdtics` と 似ています.`set xdtics` を参照して下さい.
`set ymtics` と `set noymtics` コマンドは `set xmtics`,`set noxmtics` と 似ています.`set xmtics` を参照して下さい.
`set yzeroaxis` コマンドは y 軸を描画します.デフォルトでは軸は表示されます. `set noyzerozxis` コマンドは y 軸を描画しないように指示します.
書式: set yzeroaxis set noyzeroaxis show yzeroaxis
`zero` 値とは 0.0 に近い値に対する敷居値のことです.GNUPLOT は,数値 の虚部の絶対値がこの `zero` 値を越えた場合には,その点を描画しません. また,各軸方向の変域はこの `zero` 値よりも狭くすることはできません. デフォルトでは `zero` 値は 1e-8 となっていますか `set zero` コマンドによっ て変更することができます.
書式: set zero <式> show zero
`set yzeroaxis` コマンドは x 軸および y 軸を描画します.デフォルトでは 軸は表示されます.`set noyzerozxis` コマンドは x 軸,y 軸をどちらも 描画しないように指示します. これは `set noxzeroaxis; set noyzeroaxis` と等価です.
書式: set zeroaxis set nozeroaxis show zeroaxis
`set xzeroaxis` と `set yzeroaxis` も参照して下さい.
`set zlabel` コマンドは x 軸の見出しを軸の中央にそろえて表示し ます.オプションの x,y オフセットを指定することによって任意の位置に 表示することもできます.引数なしに `set zlabel` を実行すると見出しを 表示しなくなります.
書式: set zlabel {"<label>"} {<xoff>}{,<yoff>} show zlabelオプション定数 <xoff>, <yoff> をオフセットとして指定すると指定した文 字分だけ位置を動かすことができます.これはグラフの座標系ではなく文字 座標系の文字数で指定します.例えば,
set zlabel ,1
とすると z 軸の見出しの y オフセットのみが変更されます.これによって 見出しは約1文字分上方に移動することになります.
z 軸の見出しは,曲面や等高線が描かれる場合には,必ず格子より高い部分に 表示されます.
(EEPIC と Imagen とLaTeX と TPIC に出力する場合は,文字列中に \\ を 入れることによって改行させることができます)
`set zrange` コマンドは表示される鉛直方向の変域を指定します. このコマンドを実行すると x 軸に対する自動縮尺機能(autoscaling)が解除 されます.zrange は `splot` でのみ有効で `plot` では無視されます.
この変域は `splot` コマンド中で直接指定することもできます.
書式: set zrange [{<zmin> : <zmax>}]
ここで,<zmin> と <zmax> は,定数または式です.
<zmin> と <zmax> は共に省略可能です.省略されたものは変更されません. よって
set zrange [2:]によって zmin は 2 になりますが zmax は変わりません.
`set ztics`, `set noztics` の両コマンドは `set xtics`, `set noxtics` の各コマンドとほぼ同じです.`set xtics` を参照して下さい.
`set zdtics` と `set nozdtics` コマンドは `set xdtics`,`set noxdtics` と 似ています.`set xdtics` を参照して下さい.
`set zmtics` と `set nozmtics` コマンドは `set xmtics`,`set noxmtics` と 似ています.`set xmtics` を参照して下さい.