111.86.1 矢印スタイル設定 (set style arrow)

矢印 (arrow) のスタイルの集合は set style arrow を使って定義すること ができます。各スタイルは、それ自身の幅、点種、色などを持ち、そのためそ れらを後で使うときにいちいち同じ情報を繰り返して指定しなくても、それを 番号 <index> で参照できます。

書式:


     set style arrow <index> default
     set style arrow <index> {nohead | head | backhead | heads}
                             {size <length>,<angle>{,<backangle>} {fixed}}
                             {filled | empty | nofilled | noborder}
                             {front | back}
                             { {linestyle | ls <line_style>}
                               | {linetype | lt <line_type>}
                                 {linewidth | lw <line_width}
                                 {linecolor | lc <colorspec>}
                                 {dashtype | dt <dashtype>} }
     unset style arrow
     show style arrow

<index> は整数で、それで矢のスタイル (arrowstyle) を特定します。

default を指定すると、全ての arrow スタイルパラメータはそのデフォル トの値になります。

<index> の arrowstyle が既に存在する場合、他の全ては保存されたまま、与 えられたパラメータのみが変更されます。<index> が存在しなければ、指定さ れなかった値はデフォルトの値になります。

コマンド plot または splot から呼び出した arrow スタイルには、デー タ毎可変な線色 (lc variablelc rgb variable) を入れることもでき、 それはそれに対応する using 指定によるデータの追加列が必要となります。 この場合、set arrow で作成する個別の arrow に対しては、そのスタイル は多分有益なものではありません。

nohead を指定することで、矢先のない矢、すなわち線分を書くこともでき ます。これは描画の上に線分を描く別な方法を与えます。デフォルトでは 1 つの矢先がついています。heads の指定で線分の両端に矢先が描かれます。

矢先の大きさは size <length>,<angle> または size <length>,<angle>,<backangle> で変更できます。<length> は矢先 の各枝の長さで、<angle> は矢先の枝と矢軸がなす角度 (単位は度) です。 <length> の単位は x 軸と同じですが、それは <length> の前に first, second, graph, screen, character をつけることで変更できます。 詳細は、以下参照: coordinates (11)

デフォルトでは、とても短い矢の矢先は小さくしますが、これは、size コ マンドの後ろに fixed を使うことで無効にできます。

<backangle> は、矢先の後ろの部分の矢軸との切り角 (<angle> と同じ方 向、単位は度) になりますが、スタイルが nofilled の場合はこれを無視し ます。

filled を指定すると、矢先の回りの線 (境界線) を描き、矢先を塗りつぶ します。noborder を指定すると、矢先は塗りつぶしますが、境界線は描き ません。この場合、矢先の先端がベクトルの終点ピッタリの場所に置かれ、そ の矢先は全体として少し小さくなります。点線で矢を描く場合は、点線の境界 線は汚いので、常に noborder を使うべきです。矢先の塗りつぶしは、すべ ての出力形式がサポートしているとは限りません。

線種はユーザの定義したラインスタイルのリストから選ぶこともできますし (以下参照: set style line (111.86.8))、用意されている <line_type> の値 (デフ ォルトのラインスタイルのリストの番号) そして <linewidth> (デフォルト の幅の倍数) を使ってここで定義することもできます。

しかし、ユーザー定義済のラインスタイルが選択された場合、その属性 (線種、 幅) は、単に他の set style arrow コマンドで適当な番号や lt, lw などを指定しても、変更はできないことに注意して下さい。

front を指定すると、矢はグラフのデータの上に描かれます。back が指 定された場合 (デフォルト) は矢はグラフのデータの下に描かれます。front を使えば、密集したデータで矢が見えなくなることを防ぐことができます。

例:

矢先がなく、倍の幅が矢を描くには:


     set style arrow 1 nohead lw 2
     set arrow arrowstyle 1

その他の例については、以下参照: set arrow (111.2)

竹野茂治@新潟工科大学
2023-09-28