【gnuplot】PDFで線の種類を変える

gnuplotを使ってPDFのグラフを出力する際に、線の種類をlinetypeで指定しても変化が無かったので調べました。
結論から言うと、set terminal pdfset terminal pdf dashedに変更することで線の種類が変わります。

ダメな例

set terminal pdf

set output "test.pdf"
plot sin(x) with line , \
	cos(x) with line

通常

dashedオプションを付けた例

set terminal pdf dashed

set output "test_dash.pdf"
plot sin(x) with line , \
	cos(x) with line

dashedオブション付き

gnuplotで日本語ラベルを使う

Ubuntu 10.10でgnuplotを使い,グラフを作成するとします。
その際に,日本人である以上「日本語ラベル」を挿入する必要がありますね。

しかし,gnuplotのコンソール上では日本語を入力しても,消えてしまいます。

なので,ちょっと別の方法でグラフをプロットしてみましょう。


別の方法というのは,gnuplotの命令をファイルに書いてそれをgnuplotに読ませる方法です。

例えば,plotというテキストファイルを作成し,以下の内容で保存します。

set xl "Xラベル"
set yl "Yラベル"
plot sin(x)

ただし,Ubuntuでは普通文字コードはUTF-8なので,UTF-8で保存しないと文字化けします。
geditなどならそのまま保存すれば,エンコードはUTF-8で保存されると思われます。

次に,gnuplotをコンソールから呼び出します。

gnuplotのコマンドライン上で,

gnuplot> load "./plot"

で読み込ませます。

すると,描画ウィンドウが1つ開き
こんな感じで,日本語ラベルが表示されます。
日本語を含むEPS形式で出力する
ウィンドウに表示はできましたが,EPS形式で出力して,TeXの図として挿入する場合が多くあります。
日本語を含むEPSはちょっと厄介です。
TeXの文字コードがEUCであることを想定して,文字コードをEUCに合わせた方法を紹介します。
同様に,下記の内容のテキストファイルを作成し,保存します。
set terminal postscript eps enhanced "GothicBBB-Medium-EUC-H"
set output "plot.eps"
set xl "Xラベル"
set yl "Yラベル"
plot sin(x)

こちらは,文字コードはEUCで保存してください。

肝になるのが,1行目です。
set terminal postscript eps enhanced "GothicBBB-Medium-EUC-H"
本来は,
set terminal postscript eps enhanced

でいいのですが,後ろにフォント指定をしています。

これで,EPSを表示等する際に,日本語フォントが呼び出されます。

 

EPSのTeXへの挿入方法は,その他のサイトにあたってみてください。
注意すべきはTeX→DVI→PDFと変換する際に,dvipdfmxを使うと思いますが,おそらくdvipdfmxが通りません。
dvipdfmxはEPSファイルに日本語が含まれる際に,フォントを呼び出したりするようです。
どうやら,それがなぜか問題らしく,dvipdfmxの設定ファイルを修正しなければなりません。
こちらに関しては,下記の記事で紹介したので,参考にしてみてください。
問題が解決したところで,レポートの続きです!