81.30.1 キーの配置 (key placement)

配置の仕組みを理解ための最も重要な概念は、グラフ領域、すなわち内か外か ということと、グラフ領域の境界との間の余白 (margin) を考えることです。 グラフ領域に沿って、キーワード left/center/right (l/c/r) と top/center/bottom (t/c/b) は、key をその領域の内側のどこに置くかを制 御します。

モード inside では、key はキーワード left (l), right (r), top (t), bottom (b), center (c) によって以下の図のように描画領域の境界に向かって出力されます:


    t/l   t/c   t/r


    c/l    c    c/r


    b/l   b/c   b/r

モード outside でも上と同様に自動的に配置されますが、グラフ領域の境 界に対して、というよりもむしろ見た目に対して、というべきでしょう。すな わち、グラフの境界は、グラフ領域の外の key の場所を作るために、内側に 移動することになります。しかし、これは他のラベルの邪魔をしますし、もし かしたら出力デバイスによってはエラーを引き起こすかもしれません。key の 出力に合わせてどの描画境界が移動するかは、上に述べた key の位置、およ び重ね上げの方向に依存します。4 方向の中心揃えのオプション (center) に関しては、どの境界が動くのかに関するあいまいさはありませんが、角への 出力のオプションについては、重ね上げ方向が vertical の場合は左または 右の境界が、horizontal の場合は上または下の境界が、それぞれ内側に適 切に移動します。

余白 (margin) の書き方は、重ね上げの方向にかかわない自動的な配置を可能 にしています。lmargin (lm), rmargin (rm), tmargin (tm), bmargin (bm) のうちの一つを、矛盾しない 1 方向のキーワードと組み合わ せて使用した場合、以下の図に示した場所に key が配置されます:


         l/tm  c/tm  r/tm


    t/lm                  t/rm


    c/lm                  c/rm


    b/lm                  b/rm


         l/bm  c/bm  r/bm

キーワード aboveovertmargin と同じ意味です。以前のバージョンとの互換性のために、aboveover は l/c/r や重ね上げ方向のキーワードなしで使用すると、centerhorizontal を使います。キーワ ード belowunderbmargin と同じ意味です。互換性のために、 belowunder は l/c/r や重ね上げ方向のキーワードなしで使用すると centerhorizontal を使います。さらに、outside も互換性のため に t/b/c や重ね上げ方向のキーワードがなければ、top, right, vertical (つまり上の t/rm と同じ) を使用します。

説明の位置 (< position> ) は、以前のバージョンと同様単に x,y,z を指定してもいいですが、その最初のサンプル行の座標の座表系を選択するための 5つのキーワード (first, second, graph, screen, character) を 頭につけることもできます。詳細は、以下参照: coordinates (10)< position> が与えられた場合の left, right, top, bottom, center の効果は、 label コマンドで配置される文字列の場合と同じように基準位置の位置合わせ に使用されます。すなわち、left は key が < position> の右に置かれて左 合わせで出力されます。他の場合も同様です。

竹野茂治@新潟工科大学
2013年10月16日