PSWIGGLE

名前
書式
説明
オプション

バグ
関連事項

名前

pswiggle − 地図上に測線に沿ってアノマリーを描画する

書式

pswiggle xyz_files −Jparameters −Rwest/east/south/north[r] −Zscale [ −Aazimuth ] [ −B[p|s]parameters ] [ −Ccenter ] [ −Dgap ] [ −Eazimuth/elevation ] [ −Gcolor ] [ −H[i][nrec] ] [ −Jz|Zparameters ] [ −Ifix_az ] [ −K ] [ −M[flag] ] [ −N ] [ −O ] [ −P ] [ −S[x]lon0/lat0/length[units] ] [ −Ttrack_pen ] [ −U[/dx/dy/][label] ] [ −V ] [ −Wwiggle_pen ] [ −X[a|c|r][x-shift[u]] ] [ −Y[a|c|r][y-shift[u]] ] [ −ccopies ] [ −:[i|o] ] [ −bi[s|S|d|D][ncol] ] [ −fcolinfo ]

説明

pswiggle は (x,y,z) の組をファイル[または標準入力]から読んで z を測線に 沿った距離の関数として描画する。これは、連続する 2 点 (x,y) がローカ ル な距離の軸を定義し、ローカルな z 軸がその距離の軸に直交することを意味す る。ユーザは指向される正のアノマリーの向きを設定することができ、正の 向 きが指向された向きのプラス/マイナス 90 度より外側になるときは、その向き に 180 度加えて描画することもできる。正または負の曲線の内側部分のどちら か に色を塗ることもできる。結果の PostScript コードは標準出力に書き出さ れる。

files

1 つ以上のファイル名を列挙すること。ファイルが与えられな いときは、 pswiggle は標準入力を読み込む。

−J

地図の図法を選択する。尺度は UNIT/degree 、1:xxxxx 、又は UNIT 単位の幅 (オプションを大文字にする) で あ る 。 UNIT は .gmtdefaults4 で設定された MEASURE_UNIT によって cm 、インチ、 又は m になるが、 c, i, m を scale/width の値に付けることによっ て 、コマンドライン上で上書き変更することができる。地図の高さ、 最大の大きさ、最小の大きさを指定するには、それぞれ h, +, - を width に付けること。

詳細は psbasemap の man ページを参照すること。

円筒図法:

−Jclon0/lat0/scale (カッシーニ図法)
−Jj
lon0/scale (ミラー図法)
−Jm
scale (メルカトル図法 - 投影中心はグリニッジ子午線と赤道)
−Jm
lon0/lat0/scale ( メルカトル図法 - 中心子午線と標準緯度を設 定)
−Joa
lon0/lat0/azimuth/scale (斜めメルカトル図法 - 投影中心と 方 位角を設定)
−Job
lon0/lat0/lon1/lat1/scale (斜めメルカトル図法 - 2 点を設定)
−Joc
lon0/lat0/lonp/latp/scale (斜めメルカトル図法 - 中心点と 極 を設定)
−Jq
lon0/scale (等距円筒図法 (Plate Carree))
−Jt
lon0/scale (TM - 横メルカトル図法、赤道は y = 0)
−Jt
lon0/lat0/scale (TM - 横メルカトル図法、原点を設定)
−Ju
zone/scale (UTM - ユニバーサル横メルカトル図法)
−Jy
lon0/lats/scale (基本円筒図法)

方位図法:

−Jalon0/lat0/scale (ランベルト正積方位図法)
−Je
lon0/lat0/scale (正距方位図法)
−Jf
lon0/lat0/horizon/scale (心射図法)
−Jg
lon0/lat0/scale (正射図法)
−Js
lon0/lat0/[slat/]scale (一般平射図法)

円錐図法:

−Jblon0/lat0/lat1/lat2/scale (アルベルス正積円錐図法)
−Jd
lon0/lat0/lat1/lat2/scale (正距円錐図法)
−Jl
lon0/lat0/lat1/lat2/scale (ランベルト正角円錐図法)

様々な図法:

−Jhlon0/scale (ハンメル図法)
−Ji
lon0/scale (正弦曲線図法=サンソン図法)
−Jk
[f|s]lon0/scale (エッケルト IV (f) 及び VI (s) 図法)
−Jn
lon0/scale (ロビンソン図法)
−Jr
lon0/scale (ヴィンケル第 3 式図法)
−Jv
lon0/scale (ファン・デア・グリンテン図法)
−Jw
lon0/scale (モルワイデ図法)

非地理的図法:

−Jp[a]scale[/origin][r|z] (極座標 (theta,r))
−Jx
x-scale[d|l|ppow|t|T][/y-scale[d|l|ppow|t|T]] (線形、対数、 指数スケーリング)

−R

xmin, xmax, ymin, ymax は対象とする領域を指定する。地理的領 域 に対しては、これらの境界は西、東、南、北に対応し、小数値を含 む度又は [+-]dd:mm[:ss.xxx][W|E|S|N] のフォーマットで指定できる 。東西南北の代わりに地図座標の左下と右上を使うときは r を付ける こと。 2 つの略号 −Rg −Rd は全球領域(それぞれ経度 0/360 又 は -180/+180 と緯度 -90/+90 )を表す。暦時間座標系に対しては相対時 間(選択された TIME_EPOCH に対して相対的で、選択された TIME_UNIT を単位とする。 t−JX|x に付けること)又は [date]T[clock] 形式 の絶対時刻(T−JX|x に付けること)のどちらかを与えることができ る。少なくとも dateclock のどちらかが存在していなければなら ない。 T は常に必要である。 date の文字列は [-]yyyy[-mm[-dd]] ( グレゴリオ暦)又は yyyy[-Www[-d]] (ISO 週暦)の形式でなければなら ない。 clock の文字列は hh:mm:ss[.xxx] の形式でなければならない 。 区切り文字を利用する場合にはその型と位置が指定どおりでなけれ ばならない(ただし入出力と描画フォーマットは変更可能である)。

−Z

アノマリーのスケールを データの単位/距離の単位 で与える。

オプション

オプションフラグとそれに付属する引き数の間にスペースを入れないこと。

−A

指向する方位を設定する。正の部分はその方向に向かって「引 っ 張られる」。

−B

地 図 の 枠 の 目 盛とケバの間隔を設定する。全ての詳細は psbasemap の man ページを参照すること。

−C

描画する前にデータセットから center を差し引く [0] 。

−D

2 つの連続する点が gap よりも離れているときデータに隙間が存 在 するという意味になる。経度/緯度のデータに対しては gap の単位 は km であり、それ以外のときはユーザの指定する単位になる。

−E

視点の方位角と仰角を設定する [180/90] 。

−G

正の部分の塗りを設定する[デフォルトは黒]。グレース ケ ー ル (0−255) 、 カ ラ ー(r/g/b, それぞれ範囲は 0−255; h-s-v, 範囲は 0−360, 0−1, 0−1; c/m/y/k, それぞれ範囲は 0−100%; 有効なカ ラ ー 名) を 指定すること。代わりに、 −Gpdpi/pattern 、ただし pattern には用意された模様 (1-90) 又は Sun の 1, 8, 24 ビットのラスタフ ァイルの名前を与えることもできる。 dpi には画像の解像度を設定す ること。 1 ビットのラスタについては −GP を使うと反転画像にな る 。前景や背景の色を指定するには :Fcolor[B[color]] を付けること ( 透明にするには color = - とする)。個々の模様に関する情報につ い ては GMT テクニカルリファレンス & クックブックの付録 E を参照す ること。

−H

入力ファイルにヘッダ行がある時に使う。 ヘ ッ ダ 行 の 数 は .gmtdefaults4 ファイルを編集することにより変更できる。このオプ ションが使われた場合、 GMT のデフォルトではヘッダ行は 1 行で あ る。入力データだけにヘッダ行が必要な場合は −Hi を使うこと [デフ ォルトでは入力データにヘッダ行があればそれも出力される]。

−I

正の向きを固定するように設定する [デフォルトでは測線の方 向 を使うが、 −A を参照すること]。

−K

さらに PostScript コードが後に続くときに使用する [デフォル トでは描画システムを終了する]。

−M

複数のセグメントからなるファイルであることを意味する。セ グ メントは flag で始まる行で区切られる。

−N

正の部分[デフォルト]でなく、負の部分を塗りつぶす。

−O

上書き描画モードを選択する [デフォルトでは新しい描画システ ムに初期化する]。

−P

縦置き描画モードを選択する [ GMT のデフォルトは横置きである 。これを変更するには gmtdefaults を参照すること]。

−S

lon0/lat0 を中心とする位置に簡単な地図スケールを描く。カル テジアン座標系を指定するには代わりに −Sx を使うこと。 length は z の単位で、単位名を付けるとそれが描画される。

−T

測線を描く[デフォルトでは描かない]。 pen (ペン属性)はコンマ で区切られた width, color, texture のリストで、それぞれはオプシ ョ ンである。 width (幅)は長さの単位(ポイント、センチメートル、 イ ン チ) 又 は faint, thin[ner|nest], thick[er|est], fat[ter|test], obese のいずれかで指定することができる。 color ( 色)はグレースケール (0−255) 又はカラー (r/g/b, それぞれ範 囲 は 0−255; h-s-v, 範囲は 0−360, 0−1, 0−1; c/m/y/k, それぞれ範囲は 0−100%; 有効なカラー名) により指定できる。 texture (テクスチャ) はダッシュ ‘-’ と点 ‘.’ の組合せである。

−U

図に Unix システムのタイムスタンプを入れる。図の左下隅に対 するスタンプの左下隅の相対的な位置を決めることができる。随意 で ラ ベ ル又は c (コマンドの文字列を入れる)を付けることができる。 GMT のパラメータ UNIX_TIMEUNIX_TIME_POS は外見に影響を及 ぼ す。詳細は gmtdefaults の man ページを参照すること。

−V

冗長モードを選択する。標準エラー出力に経過報告を送る [デフ ォルトでは「黙って」実行する]。

−W

曲線の輪郭を描く[デフォルトでは描かない]。用いるペン属性 を 付けること [デフォルト: 幅 = 1, 色 = 黒, テクスチャ = 実線]。

−X −Y

図の原点を現在の原点に対して (x-shift,y-shift) だけ動か す。随意で長さの単位 (c, i, m, p) を付けることができる。値の 前 に a を付けると描画後に原点を元の位置に戻し、値の前に r [デフォ ルト]を付けると現在の原点を新しい位置として再設定する。 −O を使 う とデフォルトの (x-shift,y-shift) が (0,0) になり、そうでない ときは (r1i, r1i) 又は (r2.5c, r2.5c) になる。代わりに、 c は現 在 の ページサイズに基づくページの中心を使って図を中央の座標 (x 又は y) に動かす。

−:

入出力の(経度、緯度)と(緯度、経度)を入れ替える[デフォ ル ト は(経度、緯度)]。 i を付けると入力のみが、 o を付けると出力のみ が入れ替わる[デフォルトでは両方入れ替わる]。

−bi

バイナリ入力を選択する。単精度に対しては s を付けること[デ フ ォルトは d (倍精度)]。大文字の S (又は D) にするとバイトスワ ップを行う。随意で、バイナリファイルの列数がこのプログラムで 必 要 な列数を越えるときは、バイナリファイルの列数 ncol を付けるこ と[デフォルトは 3 列]。

−c

図のコピー枚数を指定する[デフォルトは 1 ]。

−f

入出力列の特殊フォーマットを使う(時間又は地 理 デ ー タ) 。 i(nput) 又は o(utput) を指定すること[デフォルトでは入力と出力の 両方]。コンマ区切りで 1 列以上(又は列の範囲)を与えること。各 列 又 は 列 の 範 囲 の項目に対して T (絶対暦時刻)、 t (選択された TIME_EPOCH に対する相対時間)、 x (経度)、 y (緯度)、 f ( 小 数) の いずれかを付けること。 −f[i|o]g−f[i|o]0x,1y (地理座標)の 省略形である。

ファイル track.xym の磁気異常データを用いて、 (平均値 32000nT を引い て から)スケールを 1000nT/cm とし、縦置きモード、幅 15cm 、目盛間隔 5 度の 極平射図上に、幅 0.25 ポイントの青い測線に沿って赤色の正のアノマリー を 描画する。

pswiggle track.xym −R-20/10/-80/-60 −JS0/90/15c −Z1000 −B5 −P −Gred −T0.25p,blue −S1000 −V > track_xym.ps

バグ

(x,y) の値が小さな桁まで得られていないために、測線に対するローカルな 直 交 軸が大きく振れてしまうことがある。これが問題になっているかどうか知る には、以下のようにすること。

awk ’{ if (NR > 1) print atan2(y-$1, x-$2); y=$1; x=$2; }’ yourdata.xyz | more

(出力はラジアン単位である。 マシンによっては "nawk" とする必要がある)。 この数値が激しく飛ぶ場合は、以下のようにすること。

awk ’{ print NR, $0 }’ yourdata.xyz | filter1d −Fb5 −N4/0 −−D_FORMAT=%.12lg > smoothed.xyz

このデータセットを代わりに描画すること。

関連事項

GMT(l), filter1d(l), psbasemap(l), splitxyz(l)