43.29 Label

set label コマンドを使うことによって任意の見出し (label) をグラフ中 に表示することができます。

書式:

     set label {<tag>} {"<label text>"} {at <position>}
               {left | center | right}
               {norotate | rotate {by <degrees>}}
               {font "<name>{,<size>}"}
               {noenhanced}
               {front | back}
               {textcolor <colorspec>}
               {point <pointstyle> | nopoint}
               {offset <offset>}
     unset label {<tag>}
     show label

位置 (< position> ) は x,y か x,y,z のどちらかで指定し、座標系を選択する にはその座標の前に first, second, graph, screen, character をつけます。詳細は coordinates の項を参照してください。

タグ (< tag> ) は見出しを識別するための整数値です。タグを指定しなかった 場合未使用のもので最も小さい値が自動的に割り当てられます。現在の見出し を変更するときはそのタグと変更したい項目を指定して set label コマン ドを使います。

< label text> は文字列定数でも構いませんし、文字列変数、または文字列の 値を持つ式でも構いません。strings, sprintf, gprintf を参照。

デフォルトでは、指定した点 x,y,z に見出しの文章の左端が来るように配置 されます。x,y,z を見出しのどこに揃えるかを変更するには変数 < justification> を指定します。これには、left, right, center の いずれかが指定でき、それぞれ文章の左、右、真中が指定した点に来るよう に配置さるようになります。描画範囲の外にはみ出るような指定も許されま すが、座標軸の見出しや他の文字列と重なる場合があります。

rotate を指定するとラベルは縦書きになります (もちろん出力ドライバが 対応していれば、ですが)。rotate by < degrees> が与えられた場合は、そ れに適合している出力ドライバは指定された角度で文字列を書こうとしますが そうでない出力形式では、垂直な文字列として扱われます。

フォントとそのサイズは、出力形式がフォントの設定をサポートしていれば font "< name> {,< size> }" で明示的に選択できます。そうでない出力形式で は、デフォルトのフォントが使われます。

通常は、現在の出力形式がサポートしていれば、ラベル文字列の全ての文字列 に拡張文字列処理モード (enhanced text mode) が使用されます。 noenhanced を使用することで、特定のラベルを拡張文字列処理から外すこ とができます。これは、ラベルが例えばアンダースコア (_) を含んでいる場 合などに有用です。enhanced text を参照してください。

front が与えられると、見出しはデータのグラフの上に書かれます。back が与えられると (デフォルト)、見出しはグラフの下に書かれます。front を使うことで、密なデータによって見出しが隠されてしまうことを避けること が出来ます。

textcolor < colorspec> は文字列の色を変更します。< colorspec> は、線 種、rgb 色、またはパレットへの割当のいずれかが指定できます。 colorspec, palette を参照してください。textcolor は、tc と省略 可能です。

  `textcolor` は、`tc` と省略可能です。
  `tc default` は、文字色をデフォルトにします。
  `tc lt <n>` は、文字色を線種 <n> (line type)と同じものにします。
  `tc ls <n>` は、文字色を line style <n> と同じものにします。
  `tc palette z` は、見出しの z の位置に対応したパレット色になります。
  `tc palette cb <val>` は、色見本 (colorbar) の <val> の色になります。
  `tc palette fraction <val>` (0<=val<=1) は、[0:1] から `palette` の
      灰色階調/カラーへの写像に対応した色になります。
  `tc rgb "#RRGGBB"` は、任意の 24-bit RGB 色を選択します。

< pointstyle> がキーワード lt, pt, ps とともに与えられると (style 参照)、与えられたスタイルと、与えられた線種の色で見出し位置に 点 (point) が描画され、見出し文字列は少し移動されます。このオプション は mouse 拡張された出力形式でのラベルの配置に、デフォルトで使用され ています。見出し文字列近くの点の描画機能を off (これがデフォルト) にす るには、nopoint を使用してください。

その移動は、デフォルトでは、< pointstyle> が与えられれば pointsize の 単位で 1,1 で、< pointstyle> が与えられていなければ 0,0 です。移動は、 追加の offset < offset> でも制御できます。ここで、< offset> は x,y か または x,y,z の形式ですが、それに座標系を選択して、その前に first, second, graph, screen, character のいずれかをつけることもでき ます。詳細は coordinates を参照してください。

もし一つ (あるいはそれ以上の) 軸が時間軸である場合、座標は timefmt の 書式にしたがって引用符で囲まれた文字列で与える必要があります。set xdataset timefmt を参照してください。

EEPIC, Imagen, LaTeX, TPIC で出力する場合は、 \ \ を使うことで見出しを 改行させることができます。

例:

(1,2) の位置に "y=x" と書く場合:

     set label "y=x" at 1,2

Symbol フォントのサイズ 24 の "シグマ" (Σ) をグラフの真中に書く場合:

     set label "S" at graph 0.5,0.5 center font "Symbol,24"

見出し "y=x^2" の右端が (2,3,4) に来るようにし、タグ番号として 3 を使う 場合:

     set label 3 "y=x^2" at 2,3,4 right

その見出しを中央揃えにする場合:

     set label 3 center

タグ番号 2 の見出しを削除する場合:

     unset label 2

全ての見出しを削除する場合:

     unset label

全ての見出しをタグ番号順に表示する場合:

     show label

x 軸が時間軸であるグラフに見出しを設定する例:

     set timefmt "%d/%m/%y,%H:%M"
     set label "Harvest" at "25/8/93",1

データと、新たに当てはめられたパラメータによる当てはめ関数を描画したい 場合、fit の後でかつ plot の前に以下を実行します:

     set label sprintf("a = %3.5g",par_a) at 30,15
     bfit = gprintf("b = %s*10^%S",par_b)
     set label bfit at 30,20

見出し文字列を小さい点から少しだけ移動する場合:

     set label 'origin' at 0,0 point lt 1 pt 2 ps 3 offset 1,-1

pm3d を使った 3 次元のカラー曲面上のある点の位置に、その z の値 (この 場合 5.5) に対応した色を見出し文字列につける場合:

     set label 'text' at 0,0,5.5 tc palette z

竹野茂治@新潟工科大学
2007年8月27日