GMTお絵かき講座
GMTとは何か?
GMT(Generic Mapping Tool)は地図やグラフを描くことができる、ハワイ大学が開発したソフトウェアです。GMTで描いた図の一例を下に示しました。これらの図はわずか数行のコマンドで描かれているのです(驚きです)。
GMTの最大の特徴としては、ただ単に地図や折れ線グラフを書くだけでなく、、、
- コンター図を書くことができる。
- 地図の上に点を打ったり、地図の上にグラフを重ねることができる。
- 複数のグラフを一枚の図に一度に出力できる
といった点が挙げられます。ExcelやSurferでもグラフやコンター図を描くことはできますが、このような複雑なグラフを作ることは難しいでしょう。
GMTを使うときには”UNIX”と”シェルスクリプト”は欠かせません。UNIXは多数のファイル操作コマンドを有するOSで、いまやWindowsやMacといったパソコン上でも軽快に動作します。シェルスクリプトはExcelのマクロなどに似ており、コマンドの自動処理化に役立ちます。GMTとシェルスクリプトを組み合わせれば、自作プログラムで計算した結果を、即座に図化することも可能です。
こんなグラフも描けますよ!
Cygwinのインストール
まず初めに、GMTを使う際に必要なUNIX環境を、Windowsパソコン上に構築しましょう。実はUNIXがなくても、GMT単体をWindows上で使用することは可能なのですが、GMTはUNIXと組み合わせて初めて真価を発揮します。WindowsパソコンにUNIXを導入する方法は大きく分けて2種類です。
- UbuntsuなどのLinuxをインストールする
- CygwinなどのUNIXエミュレータをインストールする
1のほうが一般的です。しかしこの場合、パソコンにはWindowsとLinuxの2つのOSが共存することになり、両方を使用できる環境を構築しないといけません(デュアルブート)。2の場合はその必要はありません。CygwinはWindowsシステム上で動作するUNIXエミュレーションソフトの一つで、フリーソフトウェアです。Cygwinをパソコンにインストールすれば、UNIX環境を使えるようになります。ここでは後者の場合で説明します。
※なお下記は2009年当時(Windows XP)のものです。最新のWindows OSに対応できていない場合があります。ネット検索などで最新情報を調べておいてください。
Cygwinのインストール方法は下記関連URLのサイトに詳しいです。他にもたくさんCygwinの紹介をしているサイトはあります。参考にしてみてください。(ここではCygwinのインストールの詳細紹介は省略いたします)
http://www2.ktokai-u.ac.jp/~kfuji/cygwin/cygwin.htm
インストール時に注意すべき点は「すべての機能」をインストールしてください。標準インストールでは、GMT起動時に必要なX11もインストールされませんし、GMTと組み合わせて使うことが多いFortram(f77)もインストールされません。
UNIX上では「シェル(Shell)」と呼ばれるウィンドウ上でコマンドを実行します。いくつか種類がありますが、ここでは”tcsh”を用いることにします。標準シェルである”bash”でもかまいませんが、以下のPATHの定義方法などが異なります。Cygwin上でtcshを利用できるようにするもっとも単純な方法は以下です。
- エディターで「xterm -sb -e /usr/bin/tcsh」というコマンドだけのシェルスクリプトを作る。名前を「xt」としておき、実行権限を与えておく(chmod 755 xt)。ファイルxtはホームディレクトリに置いておく。
- Cygwinを起動→Xウィンドウを起動(startxwin)→bashのウィンドウが立ち上がるので、そこで「./xt &」として、xtを実行するとtcshウィンドウが起動する。
GMTのインストール
いよいよGMTをインストールします。GMTのインストールには「install_gmt」というGMTインストール用のシェルスクリプトがあります。これを実行すると、必要なファイルのダウンロード・展開・コンパイルがすべて自動で実行されます。
(例:
http://www5.plala.or.jp/kashima/gmt/gmt_install_linux.html)
ただFTPがうまくいかなかったり、コンパイルがうまくいかない場合もあるようです。一方で、GMTのオフィシャルサイトにはすでにWin32版(Windows用に既にコンパイルされているもの)が用意されています。これらをインストールすれば楽です。
- GMTサイトへ行きます(http://gmt.soest.hawaii.edu/)。
ここにGMTの図の例(Example)やマニュアル(Docs)がたくさんあります。
- MIRRORSをクリック→Tokai U, Shimizu, JapanのFTPサイトのアドレスをメモリます。
(たぶん ftp.scc.u-tokai.ac.jp)
- 東海大学のFTPサイトへ接続します。loginは「anonymous」、passwordは各自のメールアドレスを入力します。接続先の初期フォルダは「/pub/gmt/」です。
※FTP用ソフトとしてFFFTPを推奨します。京都大学内からのFTP接続も可能です。
- 接続できたら、まずnetcdf.zipというファイルをダウンロードします。デスクトップなどに「GMTダウンロード」などというフォルダを作成して、そこへダウンロードします。
- 次に「3」というフォルダを開きます。GMT ver.3をインストールします。必要なのは下記の*zipファイルです(13個)。
GMT_exe.zip, GMT_full.zip, GMT_high.zip, GMT_man.zip, GMT_pdf.zip,
GMT_progs.zip, GMT_ps.zip, GMT_scripts.zip, GMT_share.zip, GMT_suppl.zip,
GMT_suppl_exe.zip, GMT_tut.zip, GMT_web.zip
※「4」のフォルダにあるGMT ver.4を同様にインストールしてみましたが、
私の環境ではエラーが出てしまいました。一応、図は描けるのですが…?
※「windows」というフォルダがあり、そこからもファイルをダウンロードできますが、
お奨めしません。GMT4.3.0_basic_install.exe等を用いてインストールしても、
c:\GMT以外にインストールするとエラーになること、UNIX用マニュアルファイルが
インストールされないことが理由です。
- ダウンロード後の*.zipファイルをすべて解凍します。ファイルは「GMT」と「netcdf」へ解凍されるはずです(下図)。そうならない場合は解凍ソフトの設定を確認してみてください。
- 解凍したファイルをCygwinのフォルダーへ移動します。
- 「GMT」のフォルダー名は「/usr/local/gmt」にします。 ※小文字にしてください。
また「netcdf」は「usr/local/netCDF/」へ移動します。
- /usr/local/netCDF/netcdf.dllを/usr/local/gmt/binにもコピーします。
こうしないと動かないようです。
(参考:http://home.hiroshima-u.ac.jp/kojiok/wingmt/gmtsetup.html)
- cygwin.batを書き換えます。
特にGMTHOME、GMTLIBDIR、GMT_GRDDIR、netCDF、pathといった環境変数を書き換えます。私のcygwin.batを参考のため記します。以下は下記サイトを参考にしました。
http://blog.goo.ne.jp/mushipan3/e/ed0ca401d029134608f6e6053015c235
----(ここから)----
@echo off
C:
chdir C:\cygwin\bin
SET MAKE_MODE=unix
rem
set GMTHOME=c:\\cygwin\\usr\\local\\gmt
set GMTLIBDIR=c:\\cygwin\\usr\\local\\gmt\\share
set GMT_GRDDIR=c:\\cygwin\\usr\\local\\gmt\\share\\dbase
rem
set netCDF=c:\\cygwin\\usr\\local\\netCDF
rem
set HOME=c:\\cygwin\\home\\tgoto
rem
SET PATH=c:\\cygwin\\bin;c:\\cygwin\\usr\\local\\bin;%PATH%
rem
set path=c:\\cygwin\\home\\;%path%
rem
set path=c:\\cygwin\\usr\\local\\gmt\\bin;%path%
set path=c:\\cygwin\\usr\\local\\gmt\\share;%path%
rem
set path=c:\\cygwin\\usr\\local\\netCDF\\bin;%path%
set path=c:\\cygwin\\usr\\local\\netCDF\\lib;%path%
rem
set path=c:\\cygwin\\usr\\local\\ghostgum\\gsview;%path%
tcsh -l
----(ここまで)----
- ここで一つ注意。tcshの設定ファイルである「.tcshrc」にはGMTへのPATHを含まないようにしてください。こうしないと次のようなエラーが出ます。
例: /cygdrive/c/GMT\share\*** がありません。
- これでCygwinとGMTのインストールは終わりです。Cygwin上で、tcshウィンドウを立ち上げて、そこで「psxy」と入力して、以下のようなエラーメッセージが表示されれば、インストールはうまくいっていると思います。
[tgoto@geta /home/tgoto/gmt] > psxy
psxy 3.4.6 - Plot lines, polygons, and symbols on maps
usage: psxy <infiles> -J<params> -R<west/east/south/north> [-A] [-B<tickinfo>]
[-C<cpt>] [-E[x|y|X|Y][cap][/<pen>]] [-G<fill>] [-H[<nrec>]] [-K] [-L] [-M<flag>] [-N]
[-O] [-P] [-S[<symbol>][<size>]] [-U[<label>]] [-V] [-W[<pen>]] [-c<ncopies>]
[-X<x_shift>] [-Y<y_shift>] [-:] [-bi[s][<n>]]
<infiles> is one or more files. If no, read
:
(以下略)
- その他、GMTダウンロードの詳細などはこちらのサイトでも詳しく解説されています。
http://homepage2.nifty.com/kerota/GMT_1.htm
http://homepage2.nifty.com/kerota/GMT_2.htm
http://homepage2.nifty.com/kerota/GMT_3.htm
http://www.kobiwa.net/gmt/
- 下記ではUNIXコマンドの一覧などもあわせて紹介されています。
http://dyna.geo.kyushu-u.ac.jp/~yoshioka/Download/H18TEXT_REV.doc
- 以下のサイトでは京大内部でのインストール方法が書かれています。
http://ssrs.dpri.kyoto-u.ac.jp/~mizkey/gmt_inst.html
ただftp関係でうまくいかないかもしれません。あらかじめnetcdfをダウンロード
しておいてください。
つづく…