cptファイルのフォーマット

 セッション2で地震の震央位置のプロットを試した際,cptファイルについて簡単に紹介しました.ここでさらに詳しくcptファイルの解説をいたしましょう.まず,cptファイルの内容は次のようになります:

z0 Rmin Gmin Bmin z1 Rmax Gmax Bmax [ A]
...                
zn-2 Rmin Gmin Bmin zn-1 Rmax Gmax Bmax [ A]

 cptファイルはグレースケールの濃度のみが入る場合があります(この場合上記のRの部分にその濃さが入ります)ので,GとBの部分はカラーの場合にのみ使われるオプショナルな列です.最後のAの部分はこれもオプショナルで,psscaleコマンドで作成されるカラーバーのアノテーションに作用します.この部分にU, L, Bがあると,それぞれカラーバーの上の境界,下の境界,両方の境界にアノテーションをつけることになります.また,psscale-Bオプションを,ちょうどpsbasemapコマンドの場合と同じようにして指定しても,同様の効果を得ることが出来ます.

 では,cptファイル自体はどのようにして作成できるのでしょうか.これにはいろいろな方法があります.GMT自体が提供する手段は次の二通りです:

  1. 「マスター」カラーテーブル(組み込みのものもあります)と指定したzとから,makecptコマンドを用いて簡単な線形カラーテーブルを作成する方法
     
  2. 「マスター」カラーテーブルと,各区間に入る点の数が一定になるように調整したz値境界(histogram-equalized distribution of z-values)とからカラーテーブルを作成する方法(grd2cpt

 もちろん,手作業で(awkなどを用いて)cptファイルを作成することもできます.

 さて,ここではmakecptコマンドのみを説明します.このコマンドの最も重要なコマンドライン引数はマスターカラーテーブルの名前(何も引数を与えずに起動した場合は,利用可能なマスターカラーテーブルのリストが表示されます[訳者注:makecpt3.0ではそうならないようですが])とカラーテーブルを分ける等間隔のz値です.主なオプションは以下のとおりです:

表 4.1: makecptコマンドの主なオプション類
オプション 機能と意味
-C マスターcptファイルの名前
-I カラーテーブルの色の順番を逆にします
-V Verboseモード(進行状況の表示がある)で実行します
-Z 色をz値の区間ごとに(不連続に)分けるのではなく,zに応じて連続的に変わるようにします
 

 -20〜60の範囲をとるデータについて,10ごとに不連続に色が変わる型および連続的に色が変わる型のcptファイル(それぞれdisc.cptおよびcont.cpt)を作成するには次のようにします:

% makecpt -Crainbow -T-20/60/10 >! disc.cpt
% makecpt -Crainbow -T-20/60/10 -z >! cont.cpt

 これらのcptファイルについては,psscaleコマンドを用いてカラーバー(カラースケール)を描くことができます.psscaleコマンドのオプションのうち,以下のものは知っておいた方がよいでしょう:

 
表 4.2: psscaleコマンドの主なオプション類
オプション 機能と意味
-Ccptfile cptファイルの名前
-Dxpos/ypos/length/width[h] サイズ(長さ)と中央左端点の位置を指定します.
hをつけると,水平カラーバーになります.この場合指定する位置は中央上端点のものとなります.
-Imax_intensity 陰影効果をつけます
 

 さらに,-Bオプションを使用して,カラースケールのタイトルや単位表示を制御することができます(さらに,アノテーション・ティック・グリッド線までも指定できます).たとえば次のようになります:

psbasemap -R0/8.5/0/11 -Jx1i -P -B0 -K >! bar.ps
psscale -D3i/3i/4i/0.5ih -Cdisc.cpt -B:discrete: -O -K >> bar.ps
psscale -D3i/5i/4i/0.5ih -Ccont.cpt -B:continuous: -O -K >> bar.ps
psscale -D3i/7i/4i/0.5ih -Cdisc.cpt -B:discrete: -I0.5 -O -K >> bar.ps
psscale -D3i/9i/4i/0.5ih -Ccont.cpt -B:continuous: -I0.5 -O >> bar.ps
Original Text by Dr. Paul Wessel
Translated by AGATASHI.