論文に使えるグラフを作る(その2)

その1の続きです。

その1では上のようなグラフを作るところまで解説しました。これを更に改善していきます。

Step 3: ポイントを変える

ポイントを変更する場合、plotの後にwith points ***というオプションを追加して指定します。例えば、ポイントを●に変えて、色を青にする場合は以下のようなスクリプトを使います。

## Step3: ポイントを変える


set xlabel "{/=30 {/Arial-Italic T} (K)}"
set ylabel "{/=30 {/Symbol-Oblique r}_{/Arial-Italic c} ({/Symbol mW}cm)}"

plot "data1.dat" with points pt 7 lc 3 title "data" # ポイント: ●、 色: 青


# 出力フォーマットとオプションの指定
set terminal postscript eps color enhanced "Arial" 25
# 出力ファイル名の指定
set output "step2b.eps"
# グラフ再描画
replot

# フォーマットと出力のリセット
set output
set terminal win

上の例でptpointtypeの略で、数値で指定します。例えば、7は●、9は▲に対応します。また、lclinecolorの略で、3が青に対応します。ptltでどの数値がどのような形のポイントに対応するかは、「ポイントや線や色の一覧を作る」「色名の一覧を作る」を参考にしてください。この例を実行すると以下のようなグラフになります。

gnuplot 4.2以降では以下のような色の指定の仕方も出来ます。

plot "data1.dat" with points pt 7 lc rgb "blue" title "data"

lcの後にrgbというキーワードを入れることで色名を文字列や16進数で指定できるようになります。いずれの場合も二重引用符"が必要なことに注意してください。色名の文字列としては"blue"のほかに、"red""purple"等が使えます。使える色名についてはgnuplotのコマンドラインからshow colornamesと入力するか、「色名の一覧を作る」のページを参考にしてください。

ポイントを更に線でつなぎたい場合はwith linespointsを使います。上のスクリプトのplot ***の部分を下のように変えると、ポイントが線でつながれたグラフになります。

plot "data1.dat" with linespoints pt 7 lc 3 title "data"

逆に、線だけでプロットし、ポイントが必要ない場合はwith linesを使って以下のようにします。

plot "data1.dat" with lines lc 3 title "data"

線の太さを変えるにはlwlinewidthの略)を使います。lw 1がデフォルトの太さで、数値を大きくすると線も太くなります。EPSオプションを使っていてlinesでプロットする場合、lwは1.5か2くらいにしたほうが見やすいように思います。

plot "data1.dat" with lines lw 2 lc 3 title "data"

線を点線や破線にするには、ltlinetypeの略)を指定します。ltは数値によっては破線や点線に対応します。どの数値がどのような線に対応するかは、「ポイントや線や色の一覧を作る」を参考にしてください。例えば、以下のようなplotコマンドに変更すると、下図のように点線になります。なお、set terminal postscriptのオプションにsolidを追加している場合はどのltも実線になってしまうので注意が必要です。

plot "data1.dat" with lines lt 3 lw 2 lc 3 title "data"