の様なcontour plotの描き方。

次のようなgnuplotファイルをloadする。3次元プロットを真上から見たものをtable形式で書き出して、それを2次元プロットし直すときれいに描けるということらしい。

contour plot に必要なデータファイルの書式はchi2_D_He4FO_nomix_gp.datの様で、x座標が変わるときにblank行が1行要る。また、super mongoと違って、整数値で格子点を指定しなくてよいので、この例の1、2列目はredundant。

ウィンドウに出したいときは、set term post eps colorとその次の行のset out をコメントアウトする。

set cntrparam levels auto 10 とすると、適当に10分割してcontourを描いてくれる。

y2rangeとか使うと、右と左で別の刻みをとれる。

lt 1とかで線種を選べる。

reset
set term table
set nosurface
set contour
set view 0,0
set cntrparam levels discrete \
2.29575,\
5.99146
set xrange [1e-10:1e-9]
set yrange [0.8:15]

set output "chi2_D_He4FO_nomix.tbl"
splot "chi2_D_He4FO_nomix_gp.dat" u 3:4:5 w l

set term x11
set term post eps color
set out "chi2_D_He4FO_nomix.eps"

#set nokey
set size square
set log xy
set log y2
set xrange [1e-10:1e-9]
set yrange [0.8:15]
g_low = 2.03*0.8**2
g_high = 2.03*15**2
set y2range [g_low:g_high]
set y2tics 0.01,10
set my2tics 10
set ytics nomirror

plot "chi2_D_He4FO_nomix.tbl" i 0:0 w l,\
"chi2_D_He4FO_nomix.tbl" i 1:1 w l

set term x11

イラストレーターを使うときのメモ

1)上の図で、95%のcontourを塗りつぶすとき、gnuplot のそのままの出力では上側が閉じていないので、つなぐ必要がある。白い矢印で結びたい2点を選び(2点目はシフトキーを押しながらかも)、アップル+J(オブジェクト→パス→連結)でつなぐ。

2)線幅が1ptなら、

dashed: 4pt 2pt

dotted: 1pt 1.5pt

dot-dashed: 1pt 2pt 3pt 2pt

がもっともらしい。