95.38 線種 (linetype)

コマンド set linetype は各種描画に使用される基本的な線種 (linetype) を再定義することを可能にします。このコマンドのオプションは、 "set style line" のものと全く同じです。ラインスタイルと違うところは、 set linetype による再定義は永続的なことで、これは reset の影響を受 けません。

例えば、線種 1 と 2 を以下のように再定義してみます:


     set linetype 1 lw 2 lc rgb "blue" pointtype 6
     set linetype 2 lw 2 lc rgb "forest-green" pointtype 8

すると、それらの線種の最初の見た目がどうであったかに関わらず、lt 1 を 使用しているすべてのものが、その後は太い青線になります。この性質は、lt 1 によって作られた一時的なラインスタイルの定義のようなものにも適用され ます。同様に、線種 2 は、その後は太い緑線になります。

この仕組みは、gnuplot で使用する線種列に対する個人的な好みを設定するの にも使えます。それを行うには、実行時初期化ファイル ~ /.gnuplot に、例え ば以下のようなそれ用のコマンド列を追加することをお勧めします:


     set linetype 1 lc rgb "dark-violet" lw 2 pt 1
     set linetype 2 lc rgb "sea-green"   lw 2 pt 7
     set linetype 3 lc rgb "cyan"        lw 2 pt 6 pi -1
     set linetype 4 lc rgb "dark-red"    lw 2 pt 5 pi -1
     set linetype 5 lc rgb "blue"        lw 2 pt 8
     set linetype 6 lc rgb "dark-orange" lw 2 pt 3
     set linetype 7 lc rgb "black"       lw 2 pt 11
     set linetype 8 lc rgb "goldenrod"   lw 2
     set linetype cycle 8

こうすると、あなたが gnuplot を実行する度に線種はこれらの値に初期化さ れます。線種はあなたが好む数だけ初期化できます。再定義しない場合は、そ れはデフォルトの属性を持ち続けます。例えば線種 3 を再定義から外せば、 それは青で pt 3, lw 1 となります。なお、サンプルスクリプトの最初の 2,3 の行は、古いバージョンの gnuplot ではスキップさせるための保険です。

同様のスクリプトファイルで、テーマベースの色選択の定義を行ったり、特定 の描画タイプ、あるいは特定の出力形式用に色をカスタマイズしたりすること も可能です。

コマンド set linetype cycle 8 は、大きな番号の線種に対しては色や線幅 に関するこれらの定義を再利用することを gnuplot に伝えます。すなわち、 線種 (linetype) 9-16, 17-24 等に対しては、これと同じ色、幅の列を使用し ます。ただし、点の属性 (pointtype, pointsize, pointinterval) は、この コマンドの影響は受けません。unset linetype cycle はこの機能を無効に します。大きな線種番号の線の属性を明示的に定義した場合は、それは小さい 番号の線種の属性の再利用よりも優先されます。

竹野茂治@新潟工科大学
2019-12-04