101.6 グラフの枠線 (border)

set borderunset borderplotsplot でのグラフの枠の 表示を制御します。枠は必ずしも軸とは一致しないことに注意してください。 plot では大抵一致しますが、splot では大抵一致していません。

書式:

     set border {<integer>}
                {front | back | behind}
                {linestyle | ls <line_style>}
                {linetype | lt <line_type>} {linewidth | lw <line_width>}
                {linecolor | lc <colorspec>} {dashtype | dt <dashtype>}
                {polar}
     unset border
     show border

set view 56,103 のように任意の方向で表示されうる splot では、 x-y 平面上の 4 つの角は 手前 (front), 後ろ (back) , 左 (left), 右 (right) のように呼ばれます。もちろんこの同じ 4 つの角は天井の面にも あります。よって、例えば x-y 平面上の後ろと右の角をつなぐ境界を "底の右後ろ (bottom right back)" と言い、底と天井の手前の角をつなぐ境 界を "鉛直手前 (front vertical)" と呼ぶことにします (この命名法は、読 者が下の表を理解するためだけに使われます)。

枠は、12 ビットの整数に符号化されています: 下位 4 ビットは plot に対 する外枠、splot に対しては底面の外枠、次の 4 ビットは splot の鉛直 な外枠、そして上位 4 ビットは splot の天井面の外枠を制御します。よっ て外枠の設定は、次の表の対応する項目の数字の和になります:

グラフ境界の符号化
ビット plot splot
1 底の左手前
2 底の左後ろ
4 底の右手前
8 底の右後ろ
16 効果なし 鉛直左
32 効果なし 鉛直後ろ
64 効果なし 鉛直右
128 効果なし 鉛直の手前
256 効果なし 天井の左後ろ
512 効果なし 天井の右後ろ
1024 効果なし 天井の左手前
2048 効果なし 天井の右手前
4096 極座標系 効果なし

デフォルトの設定値は 31 で、これは plot では 4 方向の外枠全て、 splot では底面の枠線全部と z 軸を描くことを意味します。

3 次元の 4 本の鉛直な境界線とは別に、コマンド splot はデフォルトで、 曲面のそれぞれの角からグラフの床面への鉛直線を描画します。set border はこの鉛直線を制御しません。代わりに、set/unset cornerpoles を使って ください。

2 次元描画では境界はすべての描画要素の一番上に描かれます (front)。 もし境界を描画要素の下に描かせたい場合は、set border back としてくだ さい。

3 次元隠線処理 (hidden3d) 描画では、通常は境界を構成する線も描画要素と 同様に隠線処理の対象になります。set border behind とするとこのデフォ ルトの挙動が変わります。

<linestyle>, <linetype>, <linewidth>, <linecolor>, <dashtype> を指定し て、枠線の描画にそれらを反映させることができます (現在の出力装置がサポ ートするものに限定されます)。 さらに、軸の刻み (tics) を描画する際も、それらを境界線上で描画するか、 軸上で描画するかに関わらず、このラインスタイルを使用します。

plot では、第 2 軸を有効にすることで、下と左以外の境界に目盛りを描くことができます。詳細は、以下参照: xtics (101.120)

"unset surface; set contour base" などによって splot で底面にのみ 描画する場合、鉛直線や天井はそれらが指定されていても描画されません。

set grid のオプション 'back', 'front', 'layerdefault' でも、描画出力 の境界線を書く順番を制御できます。

キーワード polar は、極座標グラフに円形の境界をつけます。

例:

以下は、デフォルトの枠線を描きます:

     set border

以下は、plot では左と下、splot では底面の左手前と左後ろの枠線を描きます:

     set border 3

以下は、splot で周りに完全な箱を描きます:

     set border 4095

以下は、手前の鉛直面と天井のない箱を描きます:

     set border 127+256+512 # または set border 1023-128

以下は、plot に対して上と右枠線のみを描き、それらを軸として目盛りづけします:

     unset xtics; unset ytics; set x2tics; set y2tics; set border 12

竹野茂治@新潟工科大学
2021-06-25