GNUPLOT 日本語マニュアル

                                (Last Update: 23-May-1994)


                         GNUPLOT
             An Interactive Plotting Program


              Thomas Williams & Colin Kelley
             Version 3.5 organized by: Alex Woo
           Major contributors (alphabetic order):
                       John Campbell
                     Robert Cunningham
                       Gershon Elber
                       Roger Fearick
                        David Kotz
                        Ed Kubaitis
                        Russell Lang
                     Alexander Lehmann
                       Carsten Steger
                         Tom Tkacik
                     Jos Van der Woude
                          Alex Woo
 Copyright (C) 1986 - 1993   Thomas Williams, Colin Kelley

    Mailing list for comments: info-gnuplot@dartmouth.edu
   Mailing list for bug reports: bug-gnuplot@dartmouth.edu
                       May 23, 1994



          This manual is for GNUPLOT version 3.5

Table of Contents

Gnuplot

   GNUPLOT は、コマンド入力方式の対話的な関数描画プログラムです。コマン
   ドや関数名は大文字小文字を区別します。いずれのコマンドも、あいまいさ
   の無い限りにおいて省略することができます。一行中にはセミコロン(;)で
   区切って複数個のコマンドを書くことができます。文字列は引用符を使って
   表します。引用符は、一重のものでも、二重のものでも構いません。例 :

            load "filename"
            cd 'dir'

   コマンドラインでの引数は GNUPLOT 用のコマンドの書かれたファイルの名
   前であるものとします。但し標準の X11 の引数は例外で、まず最初に処理
   されます。各ファイルはコマンドライン上で指定された順に load コマンド
   でロードされます。GNUPLOT は、最後に指定されたファイルを処理し終ると
   終了します。ファイルが一つも指定されていない場合は、GNUPLOT は対話
   モードになります。

   コマンドは、複数行にまたがることができます。その場合は、最終行以外の
   全ての行の行末にバックスラッシュを(\)書く必要があります。バックス
   ラッシュは必ず各行 *最後* の文字でなくてはなりません。その結果として
   バックスラッシュと、それに続く改行文字が存在しなっかたかのように扱わ
   れます。つまり、改行文字がスペースの役をすることもありませんし、改行
   によってコメントが終了することもありません。ですから複数行にまたがる
   行をコメントアウトすると、そのコマンド全体がコメントアウトされること
   になります(comment の項を参照のこと)。

   このドキュメントにおいて、中括弧({})は省略可能な引数を表すものとしま
   す。縦棒(|)は、互いに排他的な引数を区切るものとします。GNUPLOT の
   キーワードやヘルプにおける項目名は、バッククオートまたは可能な場合に
   は boldface で表します。角括弧(<>)は、それに対応するものに置き換えら
   れるべきものを表します。

   ある項目についてのヘルプが必要なときには、help に続けてその項目名を
   入力してください。

   初めて GNUPLOT を使う方は、plot コマンドの説明から読みはじめると良い
   でしょう(help plotと入力してください)。

Cd


   cd コマンドはカレントディレクトリを変更します。

   書式 :
           cd "<ディレクトリ名>"

   ディレクトリ名は引用符に囲まれていなければなりません。

   例 :
           cd 'subdir'
           cd ".."

Clear


   clear コマンドは、set output で選択された画面または出力装置をクリア
   します。通常、ハードコピー装置に対しては改ページを行います。出力機器
   を選択するには set terminal を使用してください。

Command-line editing


   Unix または IBM PC 版の GNUPLOT はコマンドライン編集機能を持っていま
   す。さらに履歴機能によって過去のコマンドを呼びだし、編集し、再実行す
   ることができます。コマンドラインの編集が終った後に改行または復帰キー
   を押すと、そのときのカーソルの位置にかかわり無く行全体をコマンドとし
   て処理します。

   編集用のコマンドは以下の通りです。

          _____________________________________________________
         |_Character______Function____________________________|
         |                行編集(`Line editing`)              |
         |    ^B          一文字左へ移動。                    |
         |    ^F          一文字右へ移動。                    |
         |    ^A          行頭へ移動。                        |
         |    ^E          行末へ移動。                        |
         |  ^H, DEL       カーソルの左の文字を削除。          |
         |    ^D          カーソル位置の文字を削除。          |
         |    ^K          カーソル位置以降の文字をすべて削除。|
         |  ^L, ^R        画面が乱れた場合などに行を再表示。  |
         |    ^U          行全体を削除。                      |
         |    ^W          カーソルの左の一語を削除。          |
         |____________________________________________________|
         |                履歴(`History`)                     |
         |    ^P          履歴をさかのぼって検索。            |
         |____^N__________履歴をくだって検索。________________|



   IBM PC においては、DOSEDIT や CED といった TSR プログラムを利用した
   い場合があるでしょう。そのような場合、GNUPLOT を行編集機能なしでコン
   パイルすることも可能です( makefile のデフォルト設定)。IBM PC で GNU-
   PLOT 自身の行編集機能を利用する場合は、makefile において READLINE を
   セットし、リンクファイルに readline.obj を追加してください。readline
   を使うと IBM PC 版において以下の矢印キーが利用可能になります。



                       ___________________________
                      |_矢印キー______機能_______|
                      |    左         ^B~と同じ。|
                      |    右         ^F~と同じ。|
                      |   Ctl         ^A~と同じ。|
                      |   Ctl         ^E~と同じ。|
                      |    上         ^P~と同じ。|
                      |    下         ^N~と同じ。|
                      |__________________________|


   (gnuplot で使われている readline 関数は、GNU BASH や GNU EMACS で使
   われているものと同じではありません。しかしそれなりに互換性はありま
   す。)

Comment


   コメントは次のように実装されています : 文字 # は、行中のたいていの場
   所に書くことができます。このとき GNUPLOT はその行の残りの部分を無視
   します。ただし引用符の中、数(複素数を含む)の中、コマンド置換( com-
   mand substitution )の中などでは特殊な意味を持ちません。簡単に言う
   と、意味のあるような使い方をしさえすれば、正しく動作すると言うことで
   す。

Environment


   GNUPLOTは多くのシェル環境変数を認識します。必須のものはありません
   が、使えば便利になるかも知れません。

   GNUTERM が定義されている場合、それは使用される出力装置(terminal)の名
   前として使われます。これは、GNUPLOT が起動時に見つけた出力装置に優先
   して使用されますが、.gnuplot またはそれに相当するスタートアップファ
   イル( start-up を参照のこと)による指定やその後の明示的な変更の方がさ
   らに優先されます。

   Unix と AmigaDOS と MS-DOS においては、GNUHELP にヘルプファイル
   (gnuplot.gih)のパス名を定義しておくことができます。

   VMS においては、シンボル GNUPLOT$HELP を GNUPLOT 用のヘルプライブラ
   リの名前として定義します。

   Unix においては、カレントディレクトリに .gnuplot というファイルが無
   い場合には、HOME に定義されたディレクトリを探します。 AmigaDOS と
   MS-DOS においては、GNUPLOT がその役割に使われます。 VMS では、
   SYS$LOGIN: です。help startup を参照してください。

   Unix においては、PAGER がヘルプメッセージの出力用フィルターとして使
   われます。

   Unix と AmigaDOS においては、SHELL が shell コマンドの際に使われま
   す。 MS-DOS においては、COMSPECが使われます。

   AmigaDOS においては、GNUFONT が画面用のフォントとして使われます。例
   : "setenv GNUFONT sapphire/14"

   MS-DOS において BGI インタフェイスが使われている場合には、BGI という
   変数が BGI ドライバのディレクトリへのフルパスを指定するために使われ
   ます。さらに、800x600 の解像度用 Super VGA BGI ドライバを指定するた
   めに SVGAが使われ、そのモードと共に '名前.モード' とセットします。例
   えば、Super VGA ドライバが C:\TC\BGI\SVGADRV.BGI で、800x600 の解像
   度がモード 3 だったならば、'set BGI=C:\TC\BGI' と 'set
   SVGA=SVGADRV.3' とすることになります。

Exit


   exit と quit の両コマンドと END-OF-FILE 文字は、GNUPLOT を終了させま
   す。これらのコマンドは、出力装置を clear コマンドと同様にクリアして
   してから終了させます。

Expressions


   基本的には、C, FORTRAN, Pascal または BASIC において利用可能な数学表
   現を使用できます。演算子の優先順位は、C 言語における文法に従います。
   数式中の空白文字とタブ文字は無視されます。

   複素数の定数は{<実部>,<虚部>}と表せます。ここで<実部>と<虚部>は数定
   数でなくてはなりません。例えば {3,2} は 3+2i を表し、 {0,1} は i を
   表します。これらの場合には、明示的に中括弧を書く必要があります。

Functions


        GNUPLOT で使える関数は、引数として、特に断らない限り、整数、実
        数、複素数をとれることを除いては、 Unix の数学ライブラリの対応
        する関数と同じものです。BASIC のような sgn 関数も利用可能です。


  |__________________________________________________________________________|
  |___関数_______引数_____戻り値_____________________________________________|
  |  abs(x)      任意     x の絶対値,|x|; 引数 と同じ型                      |
  |  abs(x)     複素数    x の長さ, \|real(x) +imag(x)                       |
  | acos(x)      任意     cos  x (逆余弦) をラジアンで                       |
  |  arg(x)     複素数    x の偏角をラジアンで                               |
  | asin(x)      任意     sin-1x (逆正弦)をラジアンで                        |
  | atan(x)      任意     tan  x (逆正接) をラジアンで                       |
  | besj0(x)   ラジアン   x の j0 ベッセル関数                               |
  | besj1(x)   ラジアン   x の j1 ベッセル関数                               |
  | besy0(x)   ラジアン   x の y0 ベッセル関数                               |
  | besy1(x)   ラジアン   x の y1 ベッセル関数                               |
  | ceil(x)      任意     |x|, x (実部)よりも小さくない最小の整数            |
  |  cos(x)    ラジアン   cos x, x の余弦                                    |
  | cosh(x)    ラジアン   cosh x, x の双曲余弦                               |
  |  exp(x)      任意     e , x の指数関数                                   |
  | floor(x)     任意     |x|, x (実部)よりも大きくない最大の整数            |
  | gamma(x)     任意     G(real(x)), x の実部のΓ関数                       |
  | imag(x)     複素数    x の虚部を実数で                                   |
  |  int(x)      実数     x を0に近くなるように丸めた整数                    |
  |  log(x)      任意     ln x, x の( e を底とする)自然対数                  |
  | log10(x)     任意     log10 x, x の 10 を底とする対数                    |
  | real(x)      任意     x の実部                                           |
  |  sgn(x)      任意     x>0 なら 1, x<0 なら -1, x=0 なら 0. imag(x) は無視|
  |  sin(x)    ラジアン   sin x, x の正弦                                    |
  | sinh(x)    ラジアン   sinh x, x の双曲正弦                               |
  | sqrt(x)      任意     \|x,x の平方根                                     |
  |  tan(x)    ラジアン   tan x, x の正接                                    |
  |_tanh(x)____ラジアン___tanh_x,_x_の双曲正接_______________________________|

Operators


        GNUPLOTにおける演算子(operators)は対応するC言語の演算子と同じも
        のです。ただし、引数としては、特に断わらない限り、整数、実数、
        複素数のいずれも利用可能です。またFORTRANにある冪(べき)乗演算子
        **が利用可能です。

        括弧を使うことによって演算子の優先順位を変更できます。

Binary


             以下は利用可能な二項演算子とその使い方の一覧です。


                    ___________________________________________
                   | 記号   使用例   説明                     |
                   |__________________________________________|
                   |  **     a**b    冪(べき)乗               |
                   |  *      a*b     積                       |
                   |  /      a/b     商                       |
                   |  %      a%b     * 剰余                   |
                   |  +      a+b     和                       |
                   |  -      a-b     差                       |
                   |  ==     a==b    等しい                   |
                   |  !=     a!=b    等しくない               |
                   |  &      a&b     * ビット毎の AND         |
                   |  ^      a^b     * ビット毎の exclusive OR|
                   |  |      a|b     * ビット毎の inclusive OR|
                   |  &&     a&&b    * 論理的 AND             |
                   |  ||     a||b    * 論理的 OR              |
                   |__?:____a?b:c____*_三項演算_______________|


             説明欄に星印(*)のついた演算子の引数は整数でなければなりま
             せん。

             論理演算子 AND(&&) と OR(||) は、C 言語同様に必要最小限の
             評価しか行いません。すなわち、&& の第二引数は第一引数が偽
             なら評価されませんし、|| の第二引数は第一引数が真なら評価
             されません。

             三項演算子はまず第一引数(a)を評価します。これが真(ゼロでな
             い)ならば、第二引数(b)を評価し、その結果を返します。それ以
             外の場合には第三引数 (c)を評価し、その結果を返します。

Unary



             以下は利用可能な単項演算子とその使い方の一覧です。


                           ______________________________
                          | 記号   使用例   説明        |
                          |_____________________________|
                          |  -       -a     負符号      |
                          |  ~       ~a     * 1の補数   |
                          |  !       !a     * 論理的否定|
                          |__!_______a!_____*_階乗_______|


             説明欄に星印(*)のついた演算子の引数は整数でなければなりま
             せん。

             階乗演算子(!)は大きな値を返せるように実数を返します。


Help


   helpコマンドは、オンラインヘルプを表示します。ある項についての説明を
   指定したいときには、次の書式を使ってください :

           help {<項目名>}

   もし<項目名>が指定されなかった場合は、GNUPLOT についての簡単な説明が
   表示されます。指定した項目についての説明が表示された後、それに対する
   細目名の入力を求められる場合があります。そして、その細目の説明が表示
   された後に、さらなる細目名の入力を要求されることもあるでしょう。ここ
   でリターンキーのみを押すと一つ上の大項目へと戻ります。これを繰り返す
   とやがて、GNUPLOT のコマンドラインへと戻ります。

Load


   load コマンドは、指定された入力ファイルの各行を、それが対話的に入力
   されたかのように実行します。save コマンドでつくられたファイルは、
   load することができます。有効なコマンドの書かれたテキストファイルを
   つくれば、それは、loadコマンドによって、実行することができます。
   load 中のファイルの中にさらに load コマンドがあっても構いません。コ
   マンド中のコメントについては、comment の項を参照してください。

   load コマンドは、1入力行の中の最後のコマンドでなければなりません。

   書式 :
           load "<入力ファイル名>"

   入力ファイル名は引用符で囲まなければなりません。

   例 :
           load 'work.gnu'
           load "func.dat"

   GNUPLOT への引数として与えられたファイル名は、暗黙のうちに load コマ
   ンドによって実行されます。これらは、指定された順にロードされ、その後
   GNUPLOT は終了します。

Pause


   pause コマンドは、コマンドに続く任意の文字列を表示した後、指定された
   時間または、改行キーが押されるまで待ちます。pause コマンドは、 load
   用のファイルと共に使用すると、便利になるでしょう。

   書式 :
           pause <時間> {"<文字列>"}

   <時間>は、任意の整数の定数または式です。-1 を指定すると改行キーが押
   されるまで待ちます。0 を指定すると一切待たず、正整数を指定するとその
   秒数だけ待ちます。

   注意 :pause コマンドは描画の一部ではないので、異なる出力装置では異な
   る動作をする可能性があります。(これは、テキストとグラフィックスが、
   どのように混在するかによります。)

   例 :
           pause -1    # 改行キーが押されるまで待つ。
           pause 3     # 3秒待つ。
           pause -1  "Hit return to continue"
           pause 10  "Isn't this pretty?  It's a cubic-spline."

Plot


   plot と splot の両コマンドは、このプログラムの主要なコマンドです。こ
   れらは、関数やデータを実に多くの方法で表示します。plot は二次元的関
   数やデータを表示するために使い、splot は三次元面やデータを表示するの
   に使います。

   書式 :

           plot {範囲(ranges)} <関数(function)> {表題(title)} {スタイル
   (style)}
                       {, <関数> {表題} {スタイル}...}
           splot {範囲}  <関数> {表題} {スタイル}
                        {, <関数> {表題} {スタイル}...}

   ここで、<関数>は式、引用符に囲まれたデータファイル名、媒介変数表示に
   おける 2 組(plotの場合)または 3 組(splotの場合)の式、のいずれかで
   す。ここでは、ユーザ定義関数や変数が利用可能です。

           plot sin(x)

   や、

           splot x * y

   のような簡単な場合もあるでしょうし、

           plot [t=1:10] [-pi:pi*2] tan(t),"data.1" with lines,t**2
   with points

   のように複雑にすることもできます。

Data-file


        ファイルに書かれた離散的なデータは、そのデータファイル名を引用
        符に囲んで plot や splot コマンド中に書くことによって、表示させ
        ることができます。データファイルには、一行にひとつずつデータが
        書かれていなければなりません。# (VMSでは、!)で始まる行はコメン
        トとして扱われ、無視されます。plot に対しては、各データ点は
        (x,y) の組を表します。 splot では、(x,y,z)です。エラーバー付き
        の plot (plot errorbars 参照)では、各データ点は、(x,y,ydelta)
        または (x,y,ylow,yhigh) を表します。いずれの場合もデータファイ
        ル中の数字は、空白文字で区切られていなければなりません。この空
        白文字によって、各行は列に区切られます。

        plot コマンドについては、x の値を省略することができ、splot コマ
        ンドについては、x, y の値を省略することができます。いずれのコマ
        ンドでも省略された値には、現在の座標値が使われます。この座標値
        は 0 から始まり、一つデータを読み込む毎に 1 づつふえまえす。

        それ以外の、入力書式を指定する場合については、plot datafile
        using を参照してください。

        plot コマンドにおいて、データファイル中の空行はグラフの中断を起
        こします。つまり、プロットスタイルが lines や linespoints だっ
        た場合に、空行の前のデータと後のデータを結ぶ線は引かれません。(
        plot style 参照)なお、これはデータを異なる線でプロットするよう
        にプロットのスタイル自身を変更するものではありません。

        次の例は、population.dat というファイルのデータと、理論曲線とを
        比較するというものです :

                pop(x) = 103*exp((1965-x)/10)
                plot [1960:1990] 'population.dat', pop(x)

        ここで、ファイル population.dat は、例えば次のようになっていま
        す :

                # Gnu population in Antarctica since 1965
                1965   103
                1970   55
                1975   34
                1980   24
                1985   10

        ファイル中のデータをプロットするときには、samples と
        iso_samples は無視されます。plot コマンドで描かれた曲線は、その
        曲線全体が収まるように拡張されます。同様に、splot コマンドで描
        かれた格子状のデータも拡張されます。この場合、各々の孤立した線
        (以後孤立線)は、空行 (CR/LF のみの行)で分離されているものと仮定
        しています。

        明示していませんが、三次元のデータファイルには二種類あります。
        もしも、全ての孤立線が同じ長さを持つならば、それは格子状のデー
        タであるとしています。つまりデータが格子状のトポロジーを持つと
        いうことです。データが格子状であるときには、各孤立線を結ぶ横断
        線(i 番目の横断線は孤立線の i 番目の点を、孤立線を与えた順に全
        て結んだものになります。)も引かれるようになります。(等高線を描
        く機能は格子状データにのみ有効であることに留意しておいてくださ
        い。)全ての孤立線が同じ長さを持つのでなければ、横断線は引かれ
        ず、また等高線を引くことも出来ません。

        splot を使う際に、3次元のデータファイルと、using format (splot
        datafile using を参照してください)によって z(高さ)のみを指定す
        る場合は非媒介変数表示モード(noparametric)を指定しなければなり
        ません。逆に、x, y, z 全てが与えられる場合は、パラメータによっ
        て張られた面をあらわすわけですから、媒介変数モードを指定してく
        ださい。 (set parametric を参照してください)

        三次元のデータファイルのによる簡単な描画例としては、

                set parametric
                splot 'glass.dat'

        や

                set noparametric
                splot 'datafile.dat'

        などが、挙げられるでしょう。ここで、datafile.dat は例えば :

                # The valley of the Gnu.

                10
                10
                10

                10
                5
                10

                10
                1
                10

                10
                0
                10

        などとなっています。ここで、このファイルは 3 × 4 の格子(3 点ず
        つの孤立線が 4 本)をなしていることに留意してください。孤立線が
        空行によって区切られています。

        UNIX などの popen の機能を持ったいくつかのシステムにおいては、
        データファイルはシェルコマンドによって実行されたプログラムから
        パイプ経由で取り込むことが出来ます。これは、ファイル名を '<' の
        文字で始めることによって指定できます。例えば :

                pop(x) = 103*exp(x/10)
                plot '< awk "{print $1-1965 $2}" population.dat',
        pop(x)

        とすることによって、最初に挙げた人口の例を x 軸について 1965 年
        以降に限ることが出来ます。

        三次元描画についてのほかの情報については、splot を参照してくだ
        さい。

Using


             ファイル中のデータの書式は、using オプションで指定できま
             す。明示的に scanf の書式文字列を指定することもできます
             し、簡単に列選択のみの指定をすることもできます。

             書式 :

                     plot "datafile" { using {  |
                                               : |
                                               :: |
                                               :::
             }
                                             {""} } ...


             及び、

                     splot "datafile" { using { :: |
              }
                                              {""} } ...

             ここで、, ,  は、スペースまたはタブに
             よって区切られた複数の列よりなるデータファイルにおいて、描
             画に使うデータの列を明示的に指定することになります。plot
             において  のみが指定された場合、 は、1 と仮定
             されます。splot において  のみが指定された場合、ファ
             イルからはその列だけが読み込まれます。 として 0 が指
             定された場合、 が座標番号(0, 1, ..)にたいして描画さ
             れます。 , ,  は、定数、式のいずれでも指
             定できます。

             plot においてエラーバー(plot errorbars を参照してください)
             を使う場合、ydelta (例えば±の誤差)のデータを第3列におく
             か、ylow, yhigh のデータを第3、4列におく必要があります。
             この場合第1、2列は x, y でなくてはなりません。

             scanf 文字列を指定すると、列指定はその順番以外は無視されま
             す。つまり、
                     plot "datafile" using 2:1 "%f%*f%f"
             とすると、第1列が y 、第3列が x となります。

             scanf 文字列が省略された場合は、列指定
             (:(:))に基づいて設定されます。using オプ
             ションが指定されなかった場合は、 plot に対しては
             "%f%f"(errorbar 付きの plot については "%f%f%f%f)が使わ
             れ、splot に対しては "%f%f%f" が使われます。

             例 :

                     plot "MyData" using "%*f%f%*20[^\n]%f" with lines

             これで "MyData" から "%*f%f%*20[^\n]%f" に従ってデータが読
             み込まれます。この書式指定文字列の意味は : "%*f" によって
             最初の数が読みとばされ、 "%f" によって次(2番目)の数が x
             として読み込まれます。続いて "%*20[^\n]" によって、最大 20
             文字の改行文字でない文字が読みとばされます。最後に "%f" に
             よって y が読み込まれます。

                     n=3;
                     plot "MyData", "MyData" using n

             上のようにすると、GNUPLOT は "MyData" の第1列に対して、第
             2、3列を描画します。ここで 'n=4; replot' を実行すると、
             第1列に対して、第2、4列を描画します。

                     splot "glass.dat" using 1

             このようにすると、GNUPLOT は "glass.dat" の各行の最初の数
             を z 座標として描画します。このとき各行のその他の項目は無
             視されます。

             註 : GNUPLOT は、データファイルからバッファーにまず1行読
             み込み、
                     sscanf(input_buffer, scanf_string, &x, &y{, &z});
             と、しています。ここで、'x', 'y', 'z' は、単精度浮動小数型
             (float)です。 2 つ(splot の時は3つ、errorbars の時は 3 ま
             たは 4 つ)の単精度浮動小数型を指定する任意の文字列が scanf
             文字列として使用できます。

Errorbars


        エラーバーは、二次元データのファイルにおいて、ydelta を指定する
        一つ、またはylowとyhighを指定する二つの追加列を読み込むことに
        よって実現されます。x 軸方向のエラーバーや splot 用のエラーバー
        はサポートされていません。

        通常、GNUPLOT はデータファイルの各行に、(x, y, ydelta) の 3 つ
        か、(x, y, ylow, yhigh) の 4 つの数値があるものとして動作しま
        す。x 座標は必ず指定しなければなりません。各数値を書く順序も上
        で挙げた通りでなくてはなりません。この書式に従うデータファイル
        は次のようにして簡単にエラーバーつきのグラフにすることが出来ま
        す。

                plot "data.dat" with errorbars

        エラーバーは、(x, ylow) から (x, yhigh) への鉛直な線として描か
        れます。もしも ylow と yhigh の代わりに ydelta が指定されたとき
        は、ylow = y - ydelta、yhigh = y + ydelta となります。もしもあ
        る行に二つしか数がなかった場合には、ylow と yhigh はともに y と
        なります。データの各点を結ぶ線を引きたい場合は、with errorbars
        と with lines を指定して、同じデータファイルを 2 回 plot してく
        ださい。


        y autoscaling が on のときは、エラーバーが収まるように y の範囲
        が調整されます。

        データファイル中の各列がどのように x, y, ydelta, ylow, yhigh に
        代入されるかを using オプションで指定することが出来ます。x の列
        は必ずなくてはなりませんし、x, y は共にエラーバーのデータより前
        になくてはなりません。3 つの数値がある行については、それらは x,
        y, ydelta であるものとされます。4 つの数値がある行については、
        それらは x, y, ylow, yhigh であるものとされます。

        例 :

                plot "data.dat" using 1:2:3:4 with errorbars
                plot "data.dat" using 3:2:6 with errorbars
                plot "data.dat" using 3:4:8:7 with errorbars

        最初の例では、x, y, ylow, yhigh をそれぞれ第 1, 2, 3, 4 列から
        読み込みます。これは何も指定しなかった場合と同じです。2 番目の
        例では、x を第 3 列から、y を第 2 列から、ydelta を第 6 列から
        読み込みます。3 番目の例では、x を第 3 列から、y を第 4 列か
        ら、ylow を第 8 列から、 yhigh を第 7 列から読み込みます。

        plot using と plot style の各項目もあわせて参照してください。

Parametric


        媒介変数モード(parametric mode)にあるとき(set parametric)には、
        式は plot については 2 つ組、splot については 3 つ組で与えられ
        なくてはなりません。すなわち
                plot sin(t),t**2
        や
                splot cos(u)*cos(v),cos(u)*sin(v),sin(u)
        という具合です。

        データファイルは通常通りに描画されます。ただし、ファイル名が指
        定されるより前にある媒介変数表示関数は、完全な形で指定されてい
        なくてはなりません。つまり、x の媒介変数表示関数(上の例では
        sin(t) )と y の関数 (上でのt**2 )の間には、いかなるオプションも
        データファイル名もあってはなりません。もし、そのようなものが
        あった場合は、媒介変数表示関数が完全に指定されていないという文
        法エラーとなります。

        範囲指定(range)は媒介変数モードでは違った意味を持ちます。plot
        コマンドにおける最初の range は trange となります。次に
        xrange、最後に yrange となります。splot においては urange,
        vrange, xrange, yrange, zrange の順になります。次の例は、trange
        を [-pi:pi] に、xrange を [-1.3:1.3] に、yrange を [-1:1] に設
        定して plot するものです。

                plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2

        with や title などのオプション類は媒介変数表示を完全にしてから
        のみ指定できます。

                plot sin(t),t**2 title 'Parametric example' with
        linespoints

Ranges


        range オプションはグラフの表示される領域を指定します。

        範囲(range)は、plot や splot のコマンドラインで指定することに
        よってその描画のみに影響させることも、set xrange, set yrange な
        どでそれ以降のデフォルト値を変更することも出来ます。

        書式 :
                [{<仮変数> =} { : }] { [{ : }]
        }

        ここで <仮変数> は独立変数(既定では x と y ですが、set dummy で
        変更可能です)で、min と max の項は定数式です。

        min と max の項は共に省略可能です。min, max のいずれも指定され
        なかった場合には、':' も省略可能です。つまり、空の領域指定とし
        て、'[ ]'が許されます。

        plot コマンドにおいて範囲を指定すると、その軸についての自動範囲
        指定 (autoscale)がオフになります。set による範囲指定を行った場
        合も、それ以降、変更するまでの間、その軸についての自動範囲指定
        がオフになります。 (set autoscaleを参照してください)

        例 :

        現在の既定の範囲を使います :
                plot cos(x)

        x の範囲のみ指定します :
                plot [-10:30] sin(pi*x)/(pi*x)

        上と同じですが、仮変数として t を使います :
                plot [t = -10 :30]  sin(pi*t)/(pi*t)

        x, y 両方の範囲を指定します :
                plot [-pi:pi] [-3:3]  tan(x), 1/x

        y の範囲のみを指定し、両方の自動範囲指定をオフにします :
                plot [ ] [-2:sin(5)*-8] sin(x)**besj0(x)

        xmax と ymin のみ指定します :
                plot [:200] [-pi:]  exp(sin(x))

        x, y, z 全ての範囲を指定します :
                splot [0:3] [1:4] [-1:1] x*y

Style


        グラフの表示方式には、lines, points, linespoints, impulses,
        dots, errorbars の6種類があります。line は隣合う点を線でつなぎ
        ます。points は各点の位置にマークを描きます。linespoints は
        lines と points の両方を行います。impulses ではx軸(splotにおい
        ては底面)からの垂線を引きます。dots では、多くの点の散布図に便
        利なように、各点の位置に小さな点を打ちます。

        errorbars は二次元でのデータファイルからのグラフでのみ利用でき
        ます。 splot や関数の plot で指定すると points を指定したものと
        します。データファイルよる plot では、errorbars は、鉛直なエ
        ラーバーが引かれることを除いては、plot の様に振舞います。つま
        り、各点 (x,y) に対して、(x,ylow) から (x,yhigh) への線が引かれ
        ることになります。エラーバーの両端はくさび型になっています。
        ylow と yhigh の値は、データファイルから using オプションに従っ
        て読み込まれます。さらなる情報は、 plot errorbars を参照してく
        ださい。

        デフォルトの線種は set function style と set data style で指定
        できます。

        既定では、各々の関数やデータファイルは、可能な限り異なる線種や
        点種を持ちます。全ての端末装置は最低でも 6 種類の点種を持ってい
        て、それを越えると順に再使用されます。LaTeX ドライバはさらに 6
        つの点種(いずれも円の変種です)を持っているので、12 のグラフが描
        かれた後にのみ同じものが使われます。

        必要ならば、グラフ毎に表示方式とその線/点種を指定することが出来
        ます。

        書式 :

                with <表示方式> {<線種> {<点種>}}

        ここで、<表示方式> は、lines, points, linespoints, impulses,
        dots, errorbars の中のいずれかです。<線種> と <点種> は正整数を
        表す定数または式で、その描画の線や点の種類を指定します。線種 1
        はデフォルトで最初に使われる線種で、線種 2 は、二番目に使われる
        ものです。以下同様に指定出来ます。

        例 :

        sin(x) を鉛直線で描画します :
                plot sin(x) with impulses

        x*y を点で描画し、x**2 + y**2 を既定方式で描画します :
                splot x*y w points, x**2 + y**2

        tan(x) を関数の既定方式で、"data.1" を折れ線で描画します :
                plot [ ] [-2:5] tan(x), "data.1" with l

        "leastsq.dat" を鉛直線で描画します :
                plot 'leastsq.dat' w i

        "exper.dat" をエラーバー付き及び折れ線で描画します :
                plot 'exper.dat' w lines, 'exper.dat' w errorbars
        ここで 'exper.dat' は 3または4個の列を持っている必要がありま
        す。

        x**2 + y**2 と x**2 - y**2 を同じ線種で描画します :
                splot x**2 + y**2 with line 1, x**2 - y**2 with line 1

        sin(x) と cos(x) を折れ線及びマーカーで描画します。折れ線は同じ
        線種ですがマーカーは異なったものを使います :
                plot sin(x) with linesp 1 3, cos(x) with linesp 1 4

        "data" を点種 3 で描画します。
                plot "data" with points 1 3
        ここで点種を指定するためには、例え線を使わなくても線種を必ず指
        定しなければならないことに留意してください。この例では、線種 1
        と点種 3 を指定していますが、線種は意味を持ちません。

        既定の表示方式の変更方法については、set style を参照してくださ
        い。

Title


        各グラフの表題はキー欄の中に現れます。既定では plot コマンドで
        用いた関数式またはファイル名が表題として使われますが、title オ
        プションを使うことによって変更できます。このオプションは with
        オプションよりも前になくてはなりません。

        書式 :
                title "<表題>"

        ここで <表題> はグラフの表題です。この文字列は引用符で囲まれて
        いなければなりません。キー欄にはこの引用符は表示されません。

        例 :

        y=x を 'x' という表題で表示します :
                plot x

        "glass.dat" というファイルを '回転体の表面' という表題で表示し
        ます :
                splot "glass.dat" title '回転体の表面'

        x の自乗を表題 "x^2" で、"data.1" を表題 '測定データ' で表示し
        ます :
                plot x**2 title "x^2", "data.1" t '測定データ'

Print


   print コマンドは <式> の値を画面に表示します。

   書式 :

           print <式>

   expressions を参照してください。

Pwd


   pwd コマンドはカレントディレクトリの名前を画面に表示します。

   書式 :
           pwd

Quit


   exit と quit の両コマンドと END-OF-FILE 文字は、GNUPLOT を終了させま
   す。これらのコマンドは、出力装置を clear コマンドと同様にクリアして
   してから終了させます。

Replot


   replot コマンドを引数なしで実行すると、最後に実行した plot または
   splot コマンドを再実行します。これは、あるプロットを異なる set オプ
   ションでみたり、同じプロットを異なる装置に出力したりするときに便利で
   しょう。

   replot コマンドに対する引数は最後に実行した plot または splot コマン
   ドの引数に(暗黙の ',' と共に)追加され、それから再実行されます。
   replot は、範囲 (range) を除いては、plot や splot と同じ引数をとるこ
   とができます。最後に実行した plot や splot コマンドの内容を修正する
   方法については command-line editing を参照してください。

Save


   save コマンドは、ユーザ定義関数、変数、set で設定するオプションのい
   ずれかか、これらすべてと、それに加えて最後に実行した plot または
   splot コマンドを指定したファイルに保存します。

   書式 :
           save  {<オプション>} "<ファイル名>"

   ここで、<オプション> は、functions, variables, set のいずれかです。
   どれも指定されなかった場合には、GNUPLOT は、ユーザ定義関数、変数、
   set で設定するオプション、最後に実行した plot または splot コマンド
   の全てを保存します。

   save は、テキスト形式で出力します。また、このファイルは load コマン
   ドで読み込むことができます。

   ファイル名は引用符に囲われていなければなりません。

   例 :

           save "work.gnu"
           save functions 'func.dat'
           save var 'var.dat'
           save set "options.dat"

Set-show


   set コマンドは実に多くのオプションを設定します。

   show コマンドはそれらの設定値を表示します。show all でそれら全てを表
   示します。

Angles


        GNUPLOT は、デフォルトでは、極座標形式のプロットの独立変数の単
        位としてラジアンを使います。set polar より先に set angles
        degrees を指定すると、デフォルトの範囲は [0:360] に変更され独立
        変数は度を単位とするようになります。これは、データファイルから
        プロットするときに特に便利でしょう。angle の設定は3次元でも
        set mapping とともに使用することによって同様な効果があります。

        書式 :
                set angles { degrees | radians }
                show angles

Arrow


        表示させることが出来ます。

        書式 :

                 set arrow {<タグ>} {from ,{,}}
                                   {to ,{,}} {{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


        自動縮尺機能(autoscale)は x、y、z の各軸に対して独立にまたは一
        括して指定できます。既定では全ての軸に対して自動縮尺設定を行い
        ます。

        自動縮尺機能を使うときは、描画範囲は自動的に割り出され、従属変
        数軸 (plot のときは y 軸、splot のときは z 軸)は、関数やデータ
        の値域が収まるように設定されます。

        従属変数軸の自動縮尺機能が指定されていない場合は、現在の y や z
        の描画範囲がそのまま使われます。

        set yrange や set zrange を参照してください。

        独立変数軸(plot のときは x 軸、splot のときは x, y 軸)の自動縮
        尺機能が指定されている場合は、描画されるデータファイルの全ての
        点が収まるように定義域をとるようになります。データファイルが一
        つも指定されていない場合は、自動縮尺機能はなんの効果もありませ
        ん。つまり、関数のみが指定されていてデーターファイルを使わない
        場合は、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

Parametric mode


             媒介変数表示モード(set parametric)においては、xrange も
             yrange と同様に縮尺を変えることが出来ます。つまり、媒介変
             数モードにおいては、x 軸方向も自動的に縮尺が調整され、描こ
             うとしている、媒介変数表示の関数が収まるようになります。も
             ちろん、y軸方向も媒介変数モードでない時同様に自動的に縮尺
             を変えます。x 軸について自動縮尺機能が設定されていない場合
             は、現在の x の範囲が使われます。

             データファイルと関数が混在している場合、x 軸方向の自動縮尺
             機能が設定されているならば、関数の x 軸方向の描画範囲は、
             データファイルの自動縮尺に合わせられます。このように現在は
             媒介変数表示でない場合との互換性をとってありますが、将来変
             更されるかもしれません。これは、媒介変数表示モードにおいて
             は、そうでないときほど x 軸と y 軸の区別が無いために、この
             ような動作が多くの場合に便利でないかもしれないという考えに
             よるものです。

             片手落ちにならないように set autoscale t というコマンドも
             使えるようになっています。しかしその効果は非常に小さいもの
             です。自動縮尺機能が設定されていると、GNUPLOT が t の範囲
             が無くなってしまうと判断した場合に範囲を少し調整します。自
             動縮尺機能が設定されていないと、このようなときにはエラーと
             なります。このような動作は実はあまり意味がない可能性があ
             り、結局 set autoscale t というコマンドは存在意義が問われ
             るべきものとなっています。

             splot においては上記の発想に基づいたうえで拡張されていま
             す。自動縮尺機能が設定されている場合、x, y, z の各描画範囲
             は計算結果が収まるように設定され、縮尺調整されることになり
             ます。

Border


        set border と set noborder の両コマンドは、plot や splot による
        プロットのまわりに枠を表示するかどうかを指定します。

        書式 :
                set border
                set noborder
                show border

Clip


        GNUPLOT はグラフの端の辺りのデータ点や線をクリッピングすること
        が出来ます。

        書式 :
                set clip <クリップ型>
                set noclip <クリップ型>
                show clip

        クリップ型として GNUPLOT は points, one, two の三種を扱えます。
        ある描画に対して、これらのクリップ型は任意の組み合せで設定する
        ことができます。

        クリップ型 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 は三種のク
        リップ型全てを無効にします。

Cntrparam


        等高線引きのための変数設定します。(contour も参照してください)

        書式 :
                set cntrparam { { linear | cubicspline | bspline } |
                                points  |
                                levels  |
                                order  }

        このコマンドは等高線がどのように引かれるかを制御します。 は
        整数型の定数式とします。各変数の意味は次のとおりです :

        linear, cubicspline, bspline --- 近似(補間)方法を指定します。
        linear ならば、等高線は曲面から得られた値により、区分的に直線で
        引かれます。cubicspline ならば、区分的な直線は、波打つ可能性が
        ありますが、いくぶんなめらかな等高線を得られるように補間されま
        す。三番目の選択枝は bspline です。これは区分的な直線から近似値
        を求めるだけですが、よりなめらかになることが保証されています。

        points --- 最終的には、全ての描画は、区分的な直線で行われます。
        ここで指定した数が曲線を補間する点の数になります。これは
        cubicspline と bspline についてのみ有効です。

        levels --- 等高線の準位数。曲面が zmin から zmax の範囲にあると
        き、等高線は、zmin + dz から zmin - dz の範囲で dz 刻みで描かれ
        ます。このとき、dz = (zmax - zmin) / (levels + 1) となります。

        order --- bspline 近似の次数。この次数が大きくなるに連れて、等
        高線がなめらかになります。(もちろん、高次の bspline 曲線ほど元
        の区分的直線からは離れていきます) このオプションは、bspline
        モードでのみ有効です。指定できる値は、2 (直線)から 10 までの整
        数です。

Contour


        面の等高線を引くことを指示します。このオプションは splot でのみ
        有効です。

        書式 :
                set contour { base | surface | both }
                set nocontour

        もしも set contour に対してオプションが指定されていないときは、
        base であると仮定されます。これらの 3 つのオプションは等高線を
        どこに引くかを指定します。base では等高線を x/y 軸の刻みのある
        底面に描きます。surface では等高線を面自体の上に描きます。both
        では等高線を底面と面上の両方に描きます。

        等高線の描画に影響を与えるパラメータについては set cntrparam も
        参照してください。

Data style


        set data style コマンドはデータのプロットに関するデフォルトのプ
        ロットスタイルを変更します。

        書式 :
                set data style
                show data style
                set data style <プロットスタイル>

        最初の例では、set data style は選択可能なプロットスタイル
        (lines, points, linespoints, dots, impulses, errorbars)を表示し
        ます。show data style は現在のデータ用のデフォルトのプロットス
        タイルを表示します。set data style dots で実際にプロットスタイ
        ルを変更します。plot も参照してください。

Dummy


        デフォルトでは 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 に変更し、後者は、二番目の変数のみを(s
        に) 変更します。

        set parametric コマンドも仮変数を変更します。(plot 用には t、
        splot 用には、u, v)

Format


        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
        も参照してください。

Function style


        set function style コマンドは関数描画の方法を変更します。

        書式 :
                set function style
                show function style
                set function style <描画方法>

        最初の例では、set function style は可能な描画方法を表示します :
        lines, points, linespoints, dots, impulses, errorbars show
        function style は現在設定されている、関数の描画方法を表示しま
        す。set function style linespoints は実際に描画方法変更するよう
        に指定します。 plot も参照してください。

Functions


        show functions コマンドはユーザーが定義した関数とその定義内容を
        表示します。

        書式 :
                show functions

Grid


        この、set grid によって刻みの位置に座標軸と同じ線で枠が描かれる
        ようになります。

        書式 :
                set grid
                set nogrid
                show grid

Hidden3d


        set hidden3d コマンドは明示的な面描画(splot を参照してください)
        での陰線処理を行うように指示します。陰線処理は GNUPLOT が媒介変
        数モードでない(nonparametric)時に陽関数と、明示的なデータの描画
        について行うことが出来ます。(set parametric を参照してください)

        この機能が有効なときは、面を構成する線、等高線(set contour を参
        照してください)、座標軸の全てに対して陰線処理が行われます。見出
        し(labels) と矢印(arrows)は常に表示されるので、この機能によって
        影響をうけることはありません。

        同時に複数の面を描画した場合は、陰線処理は各々自身についてのみ
        行われます。また、この機能は、面が線(line style)で描画された時
        のみ有効となります。

        書式 :
                set hidden3d
                set nohidden3d
                show hidden3d


Isosamples


        孤立線は面を記述する二つの媒介変数のうちの一つを固定した時に現
        れる曲線です。孤立線による表現は、面を表示する簡単な方法です。
        面 s(u,v) の媒介変数 u を固定することによって、c(v) = s(u0,v)
        というu一定の線ができます。また v を固定することによって、c(u)
        = s(u,v0) というv一定の線ができます。

        面の孤立線の密度は set isosamples コマンドで変更できます。既定
        では、サンプル数は u/v 軸につき 10 本の孤立線を引くようになって
        ます。この数値を増やすことによってより正確な描画が出来ますが、
        動作が遅くなります。なお、このパラメータはデータファイルの描画
        には何も影響を与えません。

        書式 :
                set isosamples <式>
                show isosamples

Key


        set key コマンドは描画された曲線の説明を表示すように指示しま
        す。既定ではこの説明(key)はグラフの右上の角に表示されます。

        書式 :
                set key
                set key ,{,}
                set nokey
                show key

        座標 , , (splot においては  も) は、この説明をどこに配
        置するかを指定します。この説明は、一行に一曲線分ずつ曲線の数だ
        け表示されます。各行には左側に曲線と同じ種類の直線が引かれ、そ
        の右側に plotコマンドから得られる文字列を表示します。この文字列
        を変更する方法については plot title を参照してください。これら
        の行は、文字と直線の間をそろえて整列されます。set key コマンド
        で指定する座標は、この整列の位置を指定することになります。plot
        では x と y が参照され、splot では x, y, z の三つが参照されいず
        れもグラフと同じ座標系で指定することになります。

        場合によってはこの説明の一部または全部が境界の外にはみ出すこと
        もあります。この場合見出しなどと重なってしまうこともあり、また
        出力装置によってはエラーを生じることもあります。

        例 :

        既定の位置に説明を表示します :
                set key
        説明を表示しなくします :
                set nokey
        説明を (2, 3.5, 2) の位置に表示します :
                set key 2,3.5,2

Label


        set label コマンドを使うことによって任意の見出しをグラフ中に表
        示することが出来ます。plot コマンド使用時には z 座標は無視され
        ます。 splot においてこれが指定されていないときは 0 であると仮
        定されます。

        書式 :

                 set label {<タグ>} {"<見出し文字列>"} {at
        ,{,}}
                                   {<そろえ位置>}
                 set nolabel {<タグ>}
                 show label

        文字列を省略した場合は "" であるとされます。位置を省略した場合
        は 0, 0, 0 であるとします。, ,  は全て、グラフと同じ座
        標系で指定します。<タグ> は見出しを識別するための整数値です。
        <タグ> を指定しなかった場合未使用のもので最も小さい値のものが自
        動的に使われます。<タグ> は特定の見出しを削除したり変更したりす
        るのに使用できます。変更したい見出しのタグ番号を使って、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

        (Latex, EEPIC, 及び Imagen に出力する場合文字列中に \\ を入れる
        ことによって改行させることが出来ます)

Logscale


        対数スケールは、x, y, z の各軸について設定できます。

        書式 :
                set logscale <軸>
                set nologscale <軸>
                show logscale

        ここで、<軸> は、x, y, z の任意の順序による組み合せが可能です。
        もし、<軸> が指定されなかった場合、全部が指定されたことになりま
        す。 set logscale コマンドが指定された軸の対数スケールを有効に
        し、 set nologscale で、解除します。

        例 :

        x, z 両軸について対数スケールを設定する :
               set logscale xz
        z 軸の対数スケールを解除する :
               set nologscale z


Mapping



        書式 :
                set mapping { cartesian | spherical | cylindrical }

        splot におけるデータは通常はユークリッド(Euclidean)空間でのカー
        テシアン(Cartesian)座標系で与えられます。このような三次元データ
        は(x,y,z) の三つの数値または z 座標のひとつの数値を一行に書くこ
        とによって与えられます。set mapping コマンドを使うことによっ
        て、これを球(spherical) 座標系や円筒(cylindrical)座標系に変更す
        ることが出来ます。いずれの場合も、一行につき二つの数値を与える
        ことになります。球座標系の場合、これらはθとφ(単位は set
        angles で指定したもの)でこの場合

                x = cos θ * cos φ
                y = sin θ * cos φ
                z = sin φ

        と変換されます。円柱座標系の場合、θ(単位は set angles で指定し
        たもの)と z を与え、

                x = cos θ
                y = sin θ
                z = z

        と変換されます。なお、この mapping の機能はデータファイルの
        splot のみに影響することに留意してください。

Offsets


        グラフにおける描画素領域は set offsets によって、ある程度制御す
        ることができます。このコマンドは、4つの引数(<左>, <右>, <上> ,
        <下>)をとります。既定では、このオフセットは 0 です。各オフセッ
        トは定数でも式でも構いません。左右のオフセットは x 軸と同じ単位
        で指定し、上下のオフセットは y 軸と同じ単位で指定します。sin(x)
        をオフセット 0, 0, 2, 2 で表示させると、その曲線は表示される y
        の範囲の 1/3 を占めます。オフセット機能は極座標を使う場合に縦横
        比を調整する上で特に重宝します。 splot ではオフセットは無視され
        ます。

        書式 :
                set offsets <左>, <右>, <上> , <下>
                show offsets



Output


        既定では、グラフは標準出力に出力されます。set output コマンド
        は、出力をファイルやデバイスにリダイレクトします。

        書式 :
                set output {"<ファイル名>"}
                show output

        ファイル名は引用符に囲まれていなければなりません。ファイル名が
        与えられなかった場合は、出力は標準出力に送られるようになりま
        す。

        UNIX などの popen の機能を持ったいくつかのシステムにおいては、
        出力はシェルコマンドによって実行されたプログラムに対してパイプ
        経由で送ることが出来ます。このためにはファイル名として '|' で始
        まるコマンドを与えてください。例を挙げます :

        書式 :
                set output "|lpr -Plaser filename"
                set output "|lp -dlaser filename"

        (MSDOS ではファイル名として "prn" を指定すると標準のプリンタに
        出力することが出来ます。)

Parametric


        set paramaetric コマンドは plot 及び splot の意味を通常の関数描
        画から媒介変数表示(parametric)関数描画に変更します。set
        noparametric を使えば元の描画モードに戻ります。

        二次元グラフにおいては、媒介変数表示関数はひとつの媒介変数に対
        する二つの関数で定められます。例としては plot sin(t),cos(t) と
        することによって円が描けます。

        三次元グラフにおいては面は x = f(u,v), y = g(u,v), z = h(u,v)
        で定められます。よって三つの関数を組で指定する必要があります。
        例としては、 splot cos(u)*cos(v),cos(u)*sin(v),sin(u) とするこ
        とによって球面が描けます。ひとつの曲線につき、二つの媒介変数に
        関する三つの関数が必要となるわけです。

        これによって表現できる関数群は、単純な f(x) 型の関数群の内包す
        ることになります。なぜならば二つ(三つ)の関数はx、y (、z)の値を
        独立に計算することを可能にするからです。実際、 t,f(t) (
        u,v,f(u,v) ) と書くことによって f(x) ( f(u,v) ) と同じことを実
        現できます。

        媒介変数表示関数は、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] となっています。将来的にはこれらの既定値を
        もっと有意なものに変更する予定です。


Polar


        set ploar コマンドはグラフの描画方法を直行座標系から極(polar)座
        標系に変更します。極座標系では、仮変数 x は角度を表します。そし
        てその変域はそれまでの設定値にかかわらず、 set angles の設定に
        より [0:2*pi] (ラジアン、radians) ないしは [0:360] (度、degree)
        に変更されます。

        set nopolar によって描画方法を元の直行座標系に戻します。x の変
        域は強制的に [-10:10] に変更されます。

        set poloar コマンドは splot には対応していません。splot に対す
        るこれに似た機能については set mapping を参照してください。

        極座標モードである間は x の関数は r = f(x) を指定することになり
        ます。ここで x は回転角を表します。xrange によって角度の変域を
        指定し、 yrange によって動径の変域を指定します。グラフは四角い
        領域の中に描画され x 座標と y 座標の単位は動径と同じです。つま
        り、yrange が出力における両方向の変域を定めることになります。軸
        方向の刻みは、左と下ではなく座標軸上に刻まれることになります。
        これらの値は、rrange (set rrange 参照) で指定された  をオ
        フセットとして持ちます。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πという既定の角度変域を使います。動径とグラ
        フの大きさは自動的に拡大縮小されます。二番目の例は仮変数の変域
        を拡張して、動径方向の変域(とグラフの大きさ)を [-3:3] に制限し
        ています。

Rrange


        set rrange コマンドは極(polar)座標モードでの x値、y値を求めると
        きの動径方向の変域を指定します。極座標モードでないときは何の影
        響もありません。(set polar 参照) このコマンドを使うことによって
        極の中心における値に  のオフセットを設定し、動径方向の単
        位を平行移動させます。例えば、set rrange [-40:40] とすると、極
        の中心を -40 として、動径方向に -40 から 40 の範囲の値を描画し
        ます。よって、360度分のデータを描画すると中心から80単位分の距離
        のグラフとなります。グラフ全体を見渡す場合は、set yrange [-
        80:80] とすることによって、正方形の描画領域が設定され、円を描く
        と軸に接するようになります。xrange は角度の変域を定める目的に使
        われるため、yrange の設定によって描画領域は必ず正方形になりま
        す。例えば set yrange [0:80] とすると第一象限が、set yrange [-
        80:0] とすると第三象限が表示されます。正方形でさえあればどのよ
        うな描画領域でも設定できますが、極の中心は必ず右上と左下を結ぶ
        45度線上に来ることになります。

        この rrange は、極座標モードであるときには plot コマンド中で直
        接指定することも出来ます。

        書式 :
                set rrange [{ : }]

         は定数または式です。

         は共に省略可能です。省略した部分はそれ以前の値
        のままに留まります。よって

                set rrange [:10]

        とすると  を 10 にしますが、 は変更されません。

Samples


        関数のサンプリング数は set samples コマンドで変更できます。既定
        では、サンプル数は100点となっています。この値を増やすとより正確
        な描画を得られるようになりますが、遅くなります。このパラメータ
        は、もはやデータファイル(data-file)の描画には何の影響も与えませ
        ん。

        書式 :
                set samples <式>
                show samples



Size


        set size コマンドはグラフの大きさを拡大縮小します。出力装置に
        よっては大きさを変更すると文字の位置がずれることがあります。拡
        大を指定するとおかしな結果が得られることもあります。縮小は多く
        の場合うまくいきます。

        書式 :
                set size {,}
                show size

         は拡大係数です。省略時には既定値 (1,1) が
        使用されます。

        例 :

        通常の大きさに設定します :
                set size
        通常の半分に設定します :
                set size 0.5,0.5
        横長(landoscape)グラフの極座標描画が縦横同縮尺になるように設定
        します :
                set size 0.721,1.0
        現在設定されている大きさを表示します :
                show size

        LaTeX 及び Fig を出力装置としている場合、普通の大きさ(拡大係数
        1,1)は 5 インチ幅の 3 インチ高です。big Fig (bfig) の場合は 7
        インチ幅の 5 インチ高です。postscript では横長(landoscape)モー
        ドで 10 インチ幅の 7 インチ高です。グラフの大きさは、軸や見出し
        を含んでいることに留意してください。グラフ自身の描画領域はこれ
        よりさらに小さくなります。

Style


        グラフは六種類の描画方法の中のいずれかで表示することが出来ま
        す。 lines, points, linespoints, impulses, dots, errorbars の六
        種です。lines は隣合う点を直線で結びます。points は各点の位置に
        小さなマーカを描きます。linespoints は lines と pointes の両方
        を行います。impulses は各点から x 軸へ垂線を引きます。dots は各
        点の位置に点を打ちます。多くの点の集合の散乱図などに適していま
        す。

        errorbars はデータファイルの plot でのみ使用できます。関数の
        plot や splot などで使われた場合は points として扱われます。
        データファイルの plot においては errorbars は、やはり points の
        様に描かれますが、各点に鉛直な誤差指示線加わる点が異なります。
        ある点 (x,y) に対して、誤差指示線が (x,ylow) から (x,yhigh) ま
        で引かれます。誤差指示線の両端には短い横線が描かれます。ylow と
        yhigh はデータファイルの第三及び第四引数が読み込まれます。plot
        の using オプションによって読み込む位置を変更することも出来ま
        す。詳しくは plot errorbars を参照してください。

        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, errorbars のいずれかです。

Surface


        set surface によって面の表示を制御できます。等高線を単独で表示
        したいときに便利でしょう。set nosurface が実行されると面の孤立
        線や網は引かれなくなります。set contour も参照してください。

        書式 :
                set surface
                set nosurface
                show surface

Terminal


        GNUPLOT は数多くのグラフィック装置をサポートしています。set
        terminal コマンドをつかって GNUPLOT の出力の対象となる装置の種
        類を選んでください。

        書式 :
                set terminal {<装置の種類>}
                show terminal

        <装置の種類> が与えられなかった場合には、GNUPLOT は利用可能な端
        末装置の一覧を表示します。<装置の種類> は短縮して構いません。

        出力をファイルやデバイスにリダイレクトするときには set output
        を使用してください。

        いくつかの装置には追加的なオプションがあります。例えば、dumb,
        iris4d, hpljii, postscript などを参照してください。

             18.29.1.  Dumb


             ダム(dumb)端末ドライバはオプションでサイズを指定できます。

             書式 :
                     set terminal dumb { }

             ここで  はダム端末のサイズを指定します。
             既定値は 79 ×24です。

             例 :
                     set term dumb
                     set term dumb 79 49 #(VGA screen - why would any-
             one want to do that!?)


Hpljii


             HP LaserJet II と HP DeskJet のドライバには一つオプション
             があります。

             書式 :
                     set terminal hpljii {<解像度>}
                     set terminal hpdj   {<解像度>}

             ここで <解像度> は出力解像度を1インチ当りのドット数(dpi)で
             指定します。値は 75, 100, 150, 300 のいずれかでなければな
             りません。

             例 :
                     set terminal hpljii 150


Iris4d


             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 番目の数の後ろにあるも
             のはすべて無視されます。

Pbm


             PBMplus ドライバは多くのオプションを受け付けます。

             書式 :
                     set terminal pbm {}
                     set terminal pgm {}
                     set terminal ppm {}

             ここで  は small, medium, large のいずれかです。
             既定の大きさは幅 640 点、高さ 480 点あります。 pbm の出力
             はポータブル・ビットマップです。 (1 点当り 1 ビット) pgm
             の出力はポータブフ・グレーマップです。 (1 点当り 3 ビット)
             ppm の出力はポータブフ・ピックスマップです。 (カラーで 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 ppm medium

Postscript


             PostScript ドライバは多くのオプションを受け付けます。

             書式 :
                     set terminal postscript {} {}
                                             {""}
             {}

             ここで  は landscape, portrait, default のいずれか。
             default を指定すると全てのオプションを既定状態に戻します。
              は color か monochrome のいずれか。 ""
             は有効な PostScript フォントの名前。  は
             PostScript のポイント単位でのフォントの大きさ。ここで設定
             する値は set size コマンドで拡大縮小される前の大きさ。既定
             値は 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


Table


             set terminal table とすると、グラフを描画する代わりに式の
             評価結果を x, y, z の値として ASCII 文字でマルチカラム出力
             します。絵ではなく数字を見たい場合、このドライバを使うこと
             によって数値を画面やファイルに出力することが出来ます。

Aifm


             Adobe Illustrator 3.0 ドライバは多くのオプションを受け付け
             ます。
             書式 :
                     set terminal aifm {}
                                             {""}
             {}

             default を指定すると全てのオプションを既定値に戻します。
              は color か monochrome のいずれか。 ""
             有効な PostScript フォントの名前。  は
             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


Tics


        既定では、刻みは境界の枠の 4 辺全てからグラフの内側に向かって描
        かれます。set tics コマンドによって、刻みを外側に向かって、か
        つ、左と下にのみに表示するように変更できます。この機能は、イン
        パルス(impulse)で描画する際に便利です。

        書式 :
                set tics {<方向>}
                show tics

        ここで <方向> は、in か out のいずれかです。set tics だけでは
        in になります。

        刻みの制御に関しては set xtics, set ytics, set ztics の各コマン
        ドについても参照してください。 splot をつかった三次元グラフで
        は、set ticslevel を使って、鉛直(Z)軸の相対的な高さを調整するこ
        とが出来ます。指定した数値引数はグラフの底の位置を指定します。
        ゼロを指定すると x/y 軸のある底面になり、正の数を指定すると z
        軸上のどこかになります。

        書式 :
                set ticslevel {<位置>}
                show tics

        ここで <位置> は非負の数値です。例えば
                set ticslevel 0.5

        によって既定値になります。

        set view も参照してください。

Time


        set time を使うことによってグラフの上辺または下辺に日付と時刻を
        入れることが出来ます。具体的な場所は出力装置に依存します。

        書式 :
                set time {}{,}
                set notime
                show time

        定数  または  を追加することによって日時表示を文字
        座標系で指定したオフセット分だけ動かすことが出来ます。

        例 :
                set time ,-3

        とすると、文字の高さの約三倍分下方向に移動することが出来ます。

Title


        set title コマンドはグラフの題名を上辺に中央ぞろえで出力しま
        す。オプションの x, y のオフセットを指定するとその分だけ位置を
        ずらすことが出来ます。これによって任意の位置に題名を表示するこ
        とが出来ます。set title と何も指定せずに使用すると題名の表示を
        しなくなります。

        書式 :
                 set title {"<題名文字列>"} {}{,}
                 show title

        オプション定数 ,  をオフセットとして指定すると指定
        した文字分だけ位置を動かすことが出来ます。これはグラフの座標系
        ではなく文字座標系の文字数で指定します。例えば、

                 set title ,-1

        とすると題名を下方向に約一文字分ずらすことになります。

        (Latex, EEPIC, 及び Imagen に出力する場合文字列中に \\ を入れる
        ことによって改行させることが出来ます)

Trange


        set trange コマンドは媒介変数(parametric)モードのときに、x値、y
        値を求めるときの媒介変数の変域を指定します。媒介変数モードでな
        い時何の影響もありません。(set parametric 参照) このコマンドに
        よって x/y の自動縮尺機能や x/y の変域が影響をうけることはあり
        ません。

        この変域は媒介変数モードのときには plot コマンド中で指定するこ
        とも出来ます。

        書式 :
                set trange [{ : }]

        ここで、 は、定数または式です。

         は共に省略可能です。省略されたものは変更されま
        せん。よって
                set trange [:10]
        によって tmax は 10 になりますが tmin は変わりません。set
        urange と set parametric も参照してください。

Urange


        set urange と set vrange の各コマンドは媒介変数(parametric)モー
        ドにおいて splot で x値、y値、z値を計算するのに使う媒介変数の変
        域を指定します。媒介変数モードでない時何の影響もありません。
        (set parametric 参照) このコマンドによって x/y の自動縮尺機能や
        x/y の変域が影響をうけることはありません。

        この変域は媒介変数モードのときには splot コマンド中で指定するこ
        とも出来ます。詳しくは plot を参照してください。

        書式 :
                set urange [{ : }]

        ここで、 は、定数または式です。

         は共に省略可能です。省略されたものは変更されま
        せん。よって
                set urange [:10]
        によって umax は 10 になりますが umin は変わりません。set
        trange も参照してください。

Variables


        show variables コマンドは全てのユーザ定義変数とその値のの一覧を
        表示します。

        書式 :
                show variables

View


        set view コマンドは splot における視点を指定します。このコマン
        ドによって三次元座標系のグラフがどのように二次元の画面に投影さ
        れるかを制御します。このコマンドによって回転と拡大縮小を行うこ
        とが出来ますが射影方法は正射影のみ用意されています。

        書式 :
                set view  {,{}{,{}{,}}}
                show view

        ここで、  は仮想的な三次元座標系の軸に対する
        回転角を度で指定します。これは画面水平方向を x 軸、鉛直方向を y
        軸、そして、画面に対して垂直な方向を z 軸としています。
        は [0:180] の範囲で指定でき、既定値は 60 度です。 は
        [0:360] の範囲で指定でき、既定値は 30 度です。 は splot
        全体の縮尺を決め、  は z 軸方向のみに対する縮尺を決め
        ます。これらの既定値は共に 1.0 です。

        例 :
                set view 60, 30, 1, 1
                set view ,,0.5

        前者は全ての値を既定値にしています。後者は全体の縮尺のみを 0.5
        に設定しています。

        set ticslevel も参照してください。

Vrange


        set vrange コマンドは set urange コマンドとほぼ同じです。set
        urange を参照してください。

Xlabel


        set xlabel コマンドは x 軸の見出しを軸の中央にそろえて表示しま
        す。オプションの x、y オフセットを指定することによって任意の位
        置に表示することも出来ます。引数なしに set xlabel を実行すると
        見出しを表示しなくなります。

        書式 :
                 set xlabel {"

Xrange


        set xrange コマンドは表示される水平方向の変域を指定します。この
        コマンドを実行すると x 軸に対する自動縮尺機能(autoscaling)が解
        除されます。

        この変域は plot コマンド中で直接指定することも出来ます。

        書式 :
                set xrange [{ : }]

        ここで、 は、定数または式です。

         は共に省略可能です。省略されたものは変更されま
        せん。よって
                set xrange [:10]
        によって xmax は 10 になりますが xmin は変わりません。

Xtics


        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 の位置に刻みを入れま
        す。

        ("<見出し>" <位置>, ...) 形式の指定では任意の位置に刻みを入れた
        り、刻みに数値でない見出しを入れたるすることを可能にします。一
        組の刻は、各々省略可能な見出し文字列を伴った数値の組で表されま
        す。見出しは引用符に囲まれた文字列で、"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 for-
        mat も参照してください。

Xzeroaxis


        set xzeroaxis コマンドは x 軸を描画します。既定では軸は表示され
        ます。 set noxzerozxis コマンドは x 軸を描画しないように指示し
        ます。

        書式 :
                set xzeroaxis
                set noxzeroaxis
                show xzeroaxis

Ylabel


        set ylabel コマンドは y 軸の見出しを設定します。この見出しがど
        こに表示されるかは出力装置に依存し、以下の三つのいずれかになり
        ます。またこの位置は省略可能な引数によって移動することも出来ま
        す。

        1. グラフの左上に左ぞろえで水平方向にに表示。文字を回転して表示
        することが出来ない出力装置はおそらくこの方法を使用するでしょ
        う。

        2. グラフの左側に鉛直方向に表示。文字を回転して表示できる出力装
        置は、おそらくこの方法を使用するでしょう。

        3. グラフの左側、水平方向に複数行の文字列を中央ぞろえで表示。
        LaTeX と EEPIC 用のドライバはこの方法を使います。見出し文字列が
        グラフと重ならないように \\ を使って改行位置を指示する必要があ
        ります。縦方向に表示したい場合は、一文字毎に \\ を入れるという
        方法もありますが、見栄えはよくならないでしょう。

        書式 :
                 set ylabel {"

Yrange


        set yrange コマンドは表示される鉛直方向の変域を指定します。この
        コマンドを実行すると y 軸に対する自動縮尺機能(autoscaling)が解
        除されます。

        この変域は plot コマンド中で直接指定することも出来ます。

        書式 :
                set yrange [{ : }]

        ここで、 は、定数または式です。

         は共に省略可能です。省略されたものは変更されま
        せん。よって
                set yrange [:10]
        によって ymax は 10 になりますが ymin は変わりません。

Ytics


        set ytics と set noytics の両コマンドは set xtics、set noxtics
        の各コマンドとほぼ同じです。set xtics を参照してください。

Yzeroaxis


        set yzeroaxis コマンドは y 軸を描画します。既定では軸は表示され
        ます。 set noyzerozxis コマンドは y 軸を描画しないように指示し
        ます。

        書式 :
                set yzeroaxis
                set noyzeroaxis
                show yzeroaxis

Zero


        zero 値とは 0.0 に近い値に対する敷居値のことです。GNUPLOT は、
        数値の虚部の絶対値がこの zero 値を越えた場合には、その点を描画
        しません。また、各軸方向の変域はこの zero 値よりも狭くすること
        は出来ません。既定では zero 値は 1e-8 となっていますか set zero
        コマンドによって変更することが出来ます。

        書式 :
                set zero <式>
                show zero

Zeroaxis


        set yzeroaxis コマンドは x 軸及び y 軸を描画します。既定では軸
        は表示されます。set noyzerozxis コマンドは x 軸、y 軸をどちらも
        描画しないように指示します。これは set noxzeroaxis; set
        noyzeroaxis と等価です。

        書式 :
                set zeroaxis
                set nozeroaxis
                show zeroaxis

        set xzeroaxis と set yzeroaxis も参照してください。

Zlabel


        ます。オプションの x、y オフセットを指定することによって任意の
        位置に表示することも出来ます。引数なしに set zlabel を実行する
        と見出しを表示しなくなります。

        書式 : set zlabel {"

Zrange


        このコマンドを実行すると x 軸に対する自動縮尺機能(autoscaling)
        が解除されます。zrange は splot でのみ有効で plot では無視され
        ます。

        この変域は splot コマンド中で直接指定することも出来ます。

        書式 : set zrange [{ : }]

        ここで、 は、定数または式です。

         は共に省略可能です。省略されたものは変更されま
        せん。よって set zrange [2:]によって zmin は 2 になりますが
        zmax は変わりません。

Ztics


        set ztics, set noztics の両コマンドは set xtics, set noxtics の
        各コマンドとほぼ同じです。set xtics を参照してください。

Shell


   shell コマンドは対話的なシェルを起動します。GNUPLOT に戻るには、VMS
   では logout を、Unix ならば exit もしくは END-OF-FILE 文字を、 Ami-
   gaDOS では endcli を、MS-DOS ならば exit を入力してください。

   単一のシェルコマンドならば、コマンドラインの行頭に ! の文字( VMS で
   は $)をつけることによっても実現できます。この場合コマンドが終了する
   とすぐに制御は GNUPLOT に戻ってきます。例えば VMS, AmigaDOS, MS-DOS
   では、

        ! dir

   とするとディレクトリの一覧を表示して GNUPLOT に戻ってきます。

Splot


   GNUPLOT では splot コマンドを使うことにより三次元的曲面や等高線の描
   画が出来ます。plot コマンドと共通の機能については plot を参照してく
   ださい。

   他に、set contour, set cntrparam, set surface も参照してください。

Start-up


   GNUPLOT が起動されるとき、初期設定ファイルを読み込もうとします。この
   ファイルは Unix と AmigaDOS では、.gnuplot であり、その他の処理系で
   は GNUPLOT.INI となっています。このファイルがカレントディレクトリに
   無い場合、GNUPLOT はホームディレクトリを検索します。(AmigaDOS 及び
   MS-DOS では、環境変数 GNUPLOT にホームディレクトリに対応するディレク
   トリを指定します。)

   初期設定ファイルが見つかると、GNUPLOT はこのファイルに書かれているコ
   マンドを実行します。出力装置の指定や、よく使う関数や変数の定義をここ
   で行うと便利でしょう。

Substitution


   シェルコマンドをバッククォートで囲むことによってコマンド置換を行うこ
   とが出来ます。このコマンドは子プロセスで実行され、その出力結果でコマ
   ンド(及びそれを囲んでいる引用符)を置き換えます。

   子プロセスの出力中の改行文字は空白文字に置換されます。
   コマンド置換は、GNUPLOT のコマンドライン中、どこででも使用可能です。

   例 :

   以下の例は、leastsq というプログラムを実行し、その出力結果で、
   leastsq を(まわりの引用符こみで)置き換えます :

            f(x) = `leastsq`

   ただし VMS では、

            f(x) = `run leastsq`

User-defined


   新たにユーザ定義変数及びユーザ定義関数(引数が一つまたは二つのものの
   み) を定義することによって、任意の場所でそれを使うことが出来ます。

   ユーザ定義関数の書式 :
           <関数名> ( <仮引数1> {,<仮引数2>} ) =  <式>

   ここで <式> は <仮引数1> 及び <仮引数2> による表現です。

   ユーザ定義変数の書式 :
           <変数名> = <定数式>

   例 :
           w = 2
           q = floor(tan(pi/2 - 0.1))
           f(x) = sin(w*x)
           sinc(x) = sin(pi*x)/(pi*x)
           delta(t) = (t == 0)
           ramp(t) = (t > 0) ? t : 0
           min(a,b) = (a < b) ? a : b
           comb(n,k) = n!/(k!*(n-k)!)

   pi はもともと定義されています。

   show functions と show variables も参照してください。

Bugs


   ベッセル(bessel)関数は複素数引数には対応していません。

   Γ(gamma)関数は複素数引数には対応していません。

   Sun OS (SunOS Sys4-3.2) の stdio ライブラリにはバグがあります。
   printf の "%g" が時々不正確な表示を行います(例 : "2" となるべきとこ
   ろを 200000.0 と表示する)。これにより、Sun4 上の GNUPLOT では、座標
   軸の刻の見出しが不正確になる場合があります。回避方法としては、データ
   を定数倍する方法と set format コマンドを使って刻の書式指定を "%7.0f"
   などに変更する方法があります。この不具合は SunOS 4.0 では修正されて
   いるようです。

   バグがもう一つ : SunOS 4.0 で動いている Sun3 及び、Sys4-3.2, SunOS
   4.0 で動いている Sun4 において、'scanf' ルーチンが "00 12" という文
   字列を "%f %f" で読み込む際に解析ミスを起こし、0, 12 と読み込むべき
   ところを 0, 0 と読み込みます。これがデータ入力に影響を及ぼします。も
   しもデータファイル中の x 座標値がゼロであるときにそれが '00', '000'
   などと表記されていると誤った y 座標値を読み込んでしまいます。データ
   ファイルを確認するか SunOS をバージョンアップするかしてください。こ
   の不具合は SunOS 4.1.1 では修正されているようです。

   Microsoft C 5.1 では、printf の %g に関連してひどいバグがあります。
   "%.2g", "%.1g", "%.0g", "%.g" の中のいずれを使った場合、printf 関数
   は 1e-4 から 1e-1 の範囲にある数値を不正確に表示します。%f を使って
   %e の書式で出力されるべき数値を出力すると、小数点の後ろにつくゼロの
   数がおかしくなるという現象があります。

   この不具合を回避するためには、 %e や %f を明示的に指定してください。

   Microsoft C でコンパイルされた GNUPLOT はテストに使われた二つの VGA
   ディスプレイで正しく動作しませんでした。Microsoft C のグラフィックラ
   イブラリを使うために CGA, EGA, VGA の各ドライバを書きなおす必要があ
   るでしょう。Turbo C でコンパイルされた GNUPLOT は Turbo C グラフィッ
   クライブラリを使っていますが、こちらは VGA ディスプレイで正常に動作
   しています。

   VAX/VMS 4.7 C compiler release 2.4 も printf の %g の実装が貧弱で
   す。数字は、数値としては正しく表示されますが、時として指定した書式通
   りには表示してくれません。K&R の第二版では、%g を使った場合、指数部
   が -4 よりも小さいか指定精度以上である時には %e の書式を使うと記され
   ています。VAX では指数部が -1 より小さい場合に %e を使っています。
   VAX は 1 より小さい数について %e を使うか %f を判断する場合に指定精
   度を見ずに動作しているように思われます。この不具合を回避するためには
   %e や %f を明示的に指定してください。 VAX C 2.4 リリースノートより :
   e,E,f,F,g,G 変換結果は常に小数点を含みます。 g および G については、
   末尾のゼロは取り除かれずに残ります。

   VAX/VMS 5.2 C compiler release 3.0 は release 2.4 に比べて %g の実装
   状況が若干ながらよくなっています。末尾の小数点は取り除かれるようにな
   りました。しかし %g の指数表記での末尾のゼロは以前として残ります。

   ULTRIX X11R3 には X11 用のドライバが全てのグラフをいつまでも表示し続
   けるという現象を起こすバグがあります。このバグは DEC の X11R4 のリ
   リースで修正されたようなので、ULTRIX の新しいリリースではこのような
   不具合は生じないようです。古いバージョンを持つサイトは、X11 ライブラ
   リのアップデートから行う必要があります(DEC もしくは直接 MIT から)。
   他に、 x11.trm というファイルをコンパイルする際に、ULTRIX_KLUDGE を
   define するという回避方法もありますが、これはあまりお勧めできません。

   NeXT OS 2.0 では定数 HUGE が不正な値に設定されています。HUGE は
   plot.h において 1e38 に設定されているべきです。この不具合は NeXT OS
   のバージョン 2.1 では修正されています。

   HP プロッタの旧いモデルにはページ排出コマンド 'PG' が実装されていな
   いものがあります。現在の HPGL ドライバは HPGL_reset 中でこのコマンド
   を使用しています。これらの旧モデルのために 'PG' コマンドを使わないよ
   うにする必要があるかも知れません。現在の PCL5 ドライバは、HPGL/2 を
   グラフィックだけでなくテキストにも使用しています。これはスケーラブル
   な PCL フォントを使用するように変更する必要があります。

   バグが見つかったら bug-gnuplot@ames.arc.nasa.gov までご連絡くださ
   い。

   なお、この文章の翻訳自体に関するバグを見つけた方は、ぜひ
   tamaru@keisu-s.t.u-tokyo.ac.jp までご連絡ください。