gnuplot で オングストロームなど特殊文字を出す

gnuplotでオングストロームや°(度)やプラスマイナスを出す方法です。

基本はフォント切り替えとキャラクター・コードの直接入力

基本的にフォントを切り替えて、キャラクター・コードを直接入力します。

以前紹介したgnuplot でギリシャ文字を使うにはの方法に似ています。

例えば オングストロームを出したい時は エンコードをiso_8859_1に設定し、キャラクター・コード \305を指定します。

キモはこのエンコードの指定です。これをutf8にするとオングストローム記号が出ませんよ。

set encoding iso_8859_1
set label "angstrom:   {/Helvetica \305}" at -8, 9

また℃を出す場合はフォントをSymbolに切り替えて、キャラクター・コード \260 を指定し、フォントをもとに戻してCを入れます

set label "degree C:   {/Symbol \260}C" at -8,   7

ほかにもフォントをZapfDingbatsに切り替えると他の特殊文字を入れることができます。

例を示します:

上の例のコードは以下のとおりです:

unset grid
set terminal pngcairo color enhanced font "Helvetica,18"
#set terminal pdfcairo color enhanced font "Helvetica,18"

set output "angstrom-01.png"
#set output "angstrom-01.pdf"

set xlabel '' font "Helvetica,18"
set ylabel '' font "Helvetica,18"
set size ratio 0.8
set tics font "Helvetica,18"
set xrange [-10:10]
set yrange [-10:11]

unset xtics
unset ytics
unset border

set encoding iso_8859_1

set label 'set label \047angstrom:    \{\057Helvetica \\305\}\047' font 'Courier,12,bx' at -8, 11 
set label "angstrom:   {/Helvetica \305}" font 'Helvetica,16' at 0, 9.5

set label 'set label \047degree C:   \{\/Symbol \\260\}C\047' font 'Courier,12,bx' at -8, 8
set label 'degree C:   {/Symbol \260}C' font 'Helvetica,16' at 0,   6.5

set labe  'set label \047times:      \{\/Symbol \\264\}\047' font 'Courier,12,bx' at -8, 5 
set label "times:      {/Symbol \264}" at 0, 3.5

set label 'set label \047plus/minus: \{\/Symbol \\261\}\047' font 'Courier,12,bx' at -8, 2
set label "plus/minus: {/Symbol \261}" at 0, 0.5

set label 'set label \047infinity:   \{\/Symbol \\245\}\047' font 'Courier,12,bx'at -8, -1
set label "infinity:   {/Symbol \245}" at 0, -2.5

set label 'set label \047Black  R:   \{\/Symbol \\302\}\047' font 'Courier,12,bx' at -8, -4
set label "Black  R:   {/Symbol \302}" at 0, -5.5

set label 'set label \047Black  I:   \{\/Symbol \\301\}\047' font 'Courier,12,bx' at -8, -7
set label "Black  I:   {/Symbol \301}" at 0, -8.5


plot 0.0*sin(x)  title "" with lines \
     lc rgb "white" lt 0

unset output

キャラクター・コード一覧

特殊文字のキャラクター・コード一覧はps_guide.pdfの2ページ目にあります。

ZapfDingbats フォントを使う例

ZapfDingbats フォントを使うと絵文字的なものも使えます。

unset grid
set terminal pngcairo color enhanced font "Helvetica,18"
#set terminal pdfcairo color enhanced font "Helvetica,18"

set output "angstrom-02.png"
#set output "angstrom-02.pdf"

set xlabel '' font "Helvetica,18"
set ylabel '' font "Helvetica,18"
set size ratio 0.8
set tics font "Helvetica,18"
set xrange [-10:10]
set yrange [-10:10]

unset xtics
unset ytics
unset border

set encoding iso_8859_1


set label 'set label \047\{\/ZapfDingbats \\044 \\045 \\050 \\064\}\047'  font 'Courier,12,bx' at -10,10
set label " {/ZapfDingbats \044 \045 \050 \064}" at 0,8.5


set label 'set label \047\{\/ZapfDingbats \\111 \\154 \\156 \\163\}\047' font 'Courier,12,bx' at -10,7
set label " {/ZapfDingbats \111 \154 \156 \163}" at 0,5.5

set label 'set label \047\{\/ZapfDingbats \\266 \\267 \\300 \\302\}\047' font 'Courier,12,bx' at -10,4
set label " {/ZapfDingbats \266 \267 \300 \302}" at 0,2.5

set label 'set label \047\{\/ZapfDingbats \\324 \\325 \\327 \\341\}\047' font 'Courier,12,bx' at -10,1
set label " {/ZapfDingbats \324 \325 \327 \341}" at 0,-0.5

set label 'set label \047\{\/Hevletica \\330 \\333 \\306 \\311 \\313 \\320 \\325\}\047' font 'Courier,12,bx' at -10,-2
set label "{/Hevletica \330 \333 \306 \311 \313 \320 \325}" at 0,-3.5

set label 'set label \047\{\/Hevletica \\326 \\345 \\361 \\362 \\363 \\364\}\047' font 'Courier,12,bx' at -10,-5
set label "{/Hevletica \326 \345 \361 \362 \363 \364}" at 0,-6.5

set label 'set label \047\{\/Hevletica \\274 \\275 \\276 \\256 \\251\}\047' font 'Courier,12,bx' at -10,-8
set label "{/Hevletica \274 \275 \276 \256 \251 }" at 0,-9.5

plot 0.0*sin(x)  title "" with lines \
     lc rgb "white" lt 1

unset output