出力形式canvasは、HTML5のcanvas 要素上に描画するjavascriptコマンドの集合を生成します。書式:
set terminal canvas {size <xsize>, <ysize>} {background <rgb_color>}
{font {<fontname>}{,<fontsize>}} | {fsize <fontsize>}
{{no}enhanced} {linewidth <lw>}
{rounded | butt}
{solid | dashed {dashlength <dl>}}
{standalone {mousing} | name ’<funcname>’}
{jsdir ’URL/for/javascripts’}
{title ’<some string>’}
<xsize>と<ysize>は描画領域のピクセル単位でのサイズを設定します。standaloneモードでのデフォルト
のサイズは、600x400ピクセルです。デフォルトのフォントサイズは10です。
注: ファイルcanvastext.jsで提供しているHershey simplex Romanフォントのアスキー部分のフォント一つだ
けが利用できます。これは、ファイルcanvasmath.jsで置き換えることもでき、そこにはUTF-8エンコードされ たHershey simplex Greekとmath symbolsも含まれています。他の出力形式に合わせて、font"name,size"
の形式も使えるようになっています。今のところnameのフォント名部分は無視されますが、そのうちにブラ ウザが名前付きフォントをサポートしだすでしょう。
デフォルトのstandaloneモードは、HTML 5 のcanvas要素を使用してグラフを描画するようなjavascript コードを含む HTML ページを生成します。そのHTML ページは、2 つの必要なjavascript ファイル
’can-vastext.js’、’gnuplot common.js’ にリンクします。点線をサポートするためにはさらに追加ファイル
’gnu-plot dashedlines.js’が必要です。デフォルトではそれらはローカルファイルへのリンクで、Unix 互換のシス
テムでは通常はそれらディレクトリ /usr/local/share/gnuplot/<version>/jsにあります。他の環境について は、インストールに関する注意を参照してください。この設定は、オプションjsdirに別のローカルディレク トリ、あるいは一般的なURLを指定することで変更できます。グラフをリモートクライアントのマシンで見 れるようにする場合は、通常は後者の設定が適切でしょう。
canvas 出力形式で生成される描画はすべてマウス操作可能です。キーワードmousing
を追加すると、stan-daloneモードのグラフの下にマウストラッキングボックスをつけます。これは、canvastext.js が置かれて
いるのと同じローカルディレクトリ、またはURL内の、’gnuplot mouse.js’というjavascriptファイルへのリ
ンクと’gnuplot mouse.css’ というマウスボックスに関するスタイルシートも追加します。
オプションnameは、javascriptのみを含むファイルを一つ生成します。それが含むjavascript関数と、それ が描画するcanvas要素のid の両方は、以下の文字列パラメータから取られます。例えば以下のコマンド
set term canvas name ’fishplot’
set output ’fishplot.js’
は、javascript関数fishplot()を含むファイルを生成し、その関数はグラフをid=fishplotのcanvas 上に描画 します。このjavascript関数を呼び出すHTMLページは、上で説明したcanvastext.jsも読み込まなければい けません。上のように生成した、このfishplot を取りこむ最小のHTMLファイルは以下のようになります:
<html>
<head>
<script src="canvastext.js"></script>
<script src="gnuplot_common.js"></script>
</head>
<body onload="fishplot();">
<script src="fishplot.js"></script>
<canvas id="fishplot" width=600 height=400>
<div id="err_msg">No support for HTML 5 canvas element</div>
</canvas>
</body>
</html>
このキャンバス上に描かれるそれぞれのグラフの名前は、fishplot plot 1, fishplot plot 2等となります。外部 のjavascriptルーチンでそれらを参照することもできます。例: gnuplot.toggle visibility("fishplot plot 2")
Cgi
cgiとhcgi出力ドライバはSCO CGIドライバをサポートします。hcgiはプリンタ用で、環境変数CGIPRNT が設定されている必要があります。cgiはディスプレイ、またはハードコピーに使えます: 環境変数CGIDISP をまずチェックし、次にCGIPRNTを調べます。これらの出力ドライバにはオプションはありません。
Cgm
cgm ドライバは CGM 出力 (Computer Graphics Metafile Version 1) を生成します。このファイルフォー マットはANSI規格書X3.122-1986"Computer Graphics - Metafile for the Storage and Transfer of Picture Description Information"で定義されているものの一部分です。
書式:
set terminal cgm {color | monochrome} {solid | dashed} {{no}rotate}
{<mode>} {width <plot_width>} {linewidth <line_width>}
{font "<fontname>,<fontsize>"}
{background <rgb_color>}
[deprecated] {<color0> <color1> <color2> ...}
solidは全ての曲線を実線で描き、どんな点線パターンも塗りつぶします;<mode>はlandscape,portrait, defaultのいずれか;<plot width>はポイント単位でのグラフの仮定されている幅;<line width>はポイント 単位での線幅(デフォルトは1);<fontname>はフォントの名前(以下のフォント一覧参照);そして<fontsize>
はポイント単位でのフォントのサイズ(デフォルトは 12)です。
最初の6つのオプションはどの順番で指定しても構いません。defaultを選択すると、全てのオプションをそ のデフォルトの値にします。
線の色をset termコマンドで設定する仕組みは、今は非推奨です。代わりに、背景色は分離されたキーワー
ドbackgroundで、線の色はset linetypeで設定すべきでしょう。この非推奨の仕組みでは色は’xrrggbb’の
形式で受けつけますが、xは文字’x’そのもの、’rrggbb’は16進数での赤、緑、青の成分です。最初の色を背 景色として使い、その後に続く色指定を順次線の色ととして割り当てていました。
例:
set terminal cgm landscape color rotate dashed width 432 \
linewidth 1 ’Helvetica Bold’ 12 # デフォルト set terminal cgm linewidth 2 14 # やや広い線とやや大きいフォント set terminal cgm portrait "Times Italic" 12
set terminal cgm color solid # 面倒な点線など消えてしまえ !
CGM のフォント (font)
CGM (Computer Graphics Metafile)ファイルの最初の部分、メタファイルの記述部分には、フォントリスト
(font table)が含まれています。画像の本体部では、フォントはこのリストにある番号で指定されます。デフォ
ルトではこのドライバは以下の 35 個のフォントリストを生成し、さらにこのリストのHelvetica, Times, Courierの各フォントのitalicをobliqueで置き換えたもの、およびその逆による6つの追加のフォントが 含まれます(Microsoft Office とCorel Draw CGM のimport フィルタは italicとoblique を同じものとし て扱うからです)。
CGM fonts
Helvetica Hershey/Cartographic Roman
Helvetica Bold Hershey/Cartographic Greek Helvetica Oblique Hershey/Simplex Roman Helvetica Bold Oblique Hershey/Simplex Greek Times Roman Hershey/Simplex Script
Times Bold Hershey/Complex Roman
Times Italic Hershey/Complex Greek Times Bold Italic Hershey/Complex Italic
Courier Hershey/Complex Cyrillic
Courier Bold Hershey/Duplex Roman
Courier Oblique Hershey/Triplex Roman Courier Bold Oblique Hershey/Triplex Italic
Symbol Hershey/Gothic German
ZapfDingbats Hershey/Gothic English
Script Hershey/Gothic Italian
15 Hershey/Symbol Set 1
Hershey/Symbol Set 2 Hershey/Symbol Math
これらのフォントの最初の13個はWebCGM で要求されているものです。Microsoft OfficeのCGM import フィルタはその13個の標準フォントと’ZapfDingbats’と ’Script’をサポートしています。しかし、そのスク
リプト(script)フォントは’15’という名前でしかアクセスできません。Microsoftのimport フィルタのfont
の置き換えに関するより詳しい情報については、
C:\Program Files\Microsoft Office\Office\Cgmimp32.hlp のヘルプファイル、または
C:\Program Files\Common Files\Microsoft Shared\Grphflt\Cgmimp32.cfg の設定ファイルなどをチェックしてください。
set termコマンドでデフォルトのフォントリストにないフォント名を指定することも可能です。その場合、そ
の指定したフォントが最初に現われる新しいフォントリストが作られます。そのフォント名に関して、スペル、
単語の先頭の大文字化やどこにスペースが入るかなどが、作られるCGMファイルを読むアプリケーションに とって適切なものであるかをちゃんと確認する必要があります。(gnuplot と任意のMIL-D-28003A準拠アプ リケーションは、フォント名の大文字小文字の違いは無視します。)新しいフォントをいくつも追加したい場 合は、set termコマンドを繰り返し使用してください。
例:
set terminal cgm ’Old English’
set terminal cgm ’Tengwar’
set terminal cgm ’Arabic’
set output ’myfile.cgm’
plot ...
set output
set labelコマンドでは新しいフォントを導入することはできません。
CGM のフォントサイズ (fontsize)
フォントは、ページが6 インチの幅であると仮定して伸縮されます。sizeコマンドでページの縦横比が変更さ れていたり、CGMファイルが異なる幅に変換されている場合、結果としてフォントのサイズも拡大されたり縮 小されたりすることになります。仮定されている幅を変更するには、widthオプションを使用してください。
Cgm linewidth
linewidthオプションは線の幅をポイント単位(pt)で設定します。デフォルトの幅は1 ptです。fontsizeや
widthオプションのところで説明されているように、ページの実際の幅によってその縮尺は影響を受けます。
Cgm rotate
norotateオプションはテキストの回転をしないようにします。例えばWord for Windows 6.0c用のCGM入 力フィルタは回転された文字列を受け付けますが、Wordに付属するDRAW エディタはそれを受け付けるこ とができず、グラフを編集すると(例えば曲線に見出しをつける)、全ての回転された文字列は水平方向になっ て保存されてしまい、Y軸の見出しはクリップされる境界線を越えてしまうでしょう。norotateオプション を使えば、見栄えの良くない場所からY軸の見出しが始まってしまいますが、編集によってダメージを受ける ことはなくなります。rotateオプションはデフォルトの挙動を保証します。
Cgm solid
solidオプションは描画の点線の線描画スタイルを無効するのに使います。これは、カラーが有効である場合、
また点線にすることでグラフが見にくくなる場合に有用でしょう。dashedオプションはデフォルトの挙動を 保証し、この場合個々の線種に異なる点線のパターンが与えられます。
CGM のサイズ(size)
CGMグラフのデフォルトのサイズは、横置き(landscape)では幅32599,縦23457、縦置き(portrait)では幅 23457,縦 32599です。
Cgm width
CGMファイルの全ての長さは抽象的な単位を持ち、そのファイルを読むアプリケーションが最終的なグラフの サイズを決定します。デフォルトでは最終的なグラフの幅は6 インチ(15.24 cm)であると仮定されています。
この幅は正しいフォントサイズを計算するのに使われ、widthオプションで変更できます。キーワードwidth の後に幅をポイント単位で指定します。(ここで、ポイントはPostScriptと同様1/72インチを意味します。こ の単位はTeXでは"big point"と呼ばれています。)他の単位から変換するには、gnuplot の数式が使えます。
例:
set terminal cgm width 432 # デフォルト
set terminal cgm width 6*72 # 上と同じ値
set terminal cgm width 10/2.54*72 # 10 cm の幅
Cgm nofontlist
デフォルトのフォントリスト (font table) は WebCGM で勧告されているフォントを含んでいて、これは Microsoft OfficeとCorel Drawの CGM (Computer Graphics Metafile)入力フィルタに適合しています。他 のアプリケーションは異なるフォント、あるいは異なるフォント名を使用するかも知れませんが、それはマニュ アルには書かれていないかも知れません。オプションnofontlist(winword6も同じ意味)を使用するとCGM ファイルからフォントリストを削除します。この場合、読み込んだアプリケーションはデフォルトのフォントリ ストを使用するでしょう。gnuplot はその場合でもフォント番号の選択のために自分のデフォルトのフォント リストを使用します。よって、’Helvetica’が 1番になり、それがあなたの使用するアプリケーションのデフォ ルトフォントリストの最初のものになります。’Helvetica Bold’がそのフォントリストの2 番目のフォントに 対応し、他も同様となります。