gnuplotの吐くpostscriptは素直なので、簡単にエディットできます。ビット マップが埋め込まれてないので。 40行目付近の、LT0とかをいじると、線種を変えられます。 たとえば、色違いの実線に全ての系列をそろえたいときは、LT0とかLT1とかの 直後の[]内を消してやれば、そうなります。
crc error
か.
どうもこれはハードウェアの不調,
ということらしい.
北大で直してもらうしかないようだ.
gnuplotの吐くps(eps)は、先のメールにも書きましたが、ラインに関してはか
なり素直です。
LT0とかLT1とかの定義を書き換えてやれば、破線の種類や色を簡単に変えること
ができます。
では、塗りつぶしはどうだろうかと思ってpsをじーっと見ると、どうも
gnuplotの吐くpsは、「四角形を描く」のではなく、四角形を4本の線で表してい
ます。
そして、各ページについてどうも”一筆書き”をやっているふしがあります。
ページの最初で、まずフォント類をかきます。それから線描画を始めるのです
が、
LTb
1980 1144 M
2312 0 V
0 5528 R
-2312 0 R
0 -5528 V
(中略)
LT0
1980 1144 M
0 1 V
578 0 V
0 -1 V
-578 0 V
578 0 R
(中略)
LT1
1980 1144 M
578 0 V
-578 0 V
578 0 R
0 20 V
578 0 V
0 -20 V
-578 0 V
578 0 R
(中略)
stroke
grestore
end
showpage
(↑ページ終わり)
となっています。Mは絶対座標の移動で、Vはそこからの相対値で線を書き、R
はそこからの相対値で移動します。LTbは黒の線、LT0とLT1はそれぞれ系列1と
系列2の線(line type)です。
つまり、各系列は初期の座標を決めた後、そこからの相対座標で4本の線を書
き、相対座標で移動して、ということを繰り返すわけです。しかも、同一ページ
では、それぞれの系列は一回きりで書いてしまうわけです。
で、これを塗りつぶしにする手口ですが、存外簡単で、まず、20行目あたりの
定義を行っているらへんで、
/FL {eofill} def
をもぐりこませます。
そして、LT0やLT1の一筆書きの最終行に、
1.000 UL
という記述がありますので、この直前にFLをもぐりこませます。
FL 1.000 UL
これで、塗りつぶしができます。
複数ページあれば、FLのもぐりこませは各ページでやる必要があります。
騙されたと思っていちど試してみてください。
|
[PostScript file 直接操作]
たしかにやってみると塗りつぶされた. 元の図は線だけで構成されていたのである. このように出力するためには少々の工夫が必要であり, そのように試行錯誤してるうちに 「言語」としての PostScript の意味まで 少しずつわかってくるのである. |