GMTSELECT

名前
書式
説明
オプション
アスキー形式の精度
注意

関連事項

名前

gmtselect − 複数の空間的基準に基づいて部分データを選択する

書式

gmtselect [ infiles ] [ −Amin_area[/min_level/max_level] ] [ −C[f]dist/ptfile ] [ −Dresolution ] [ −Fpolygonfile ] [ −H[i][nrec] ] [ −I[cflrs] ] [ −Jparameters ] [ −Ldist/linefile ] [ −M[i|o][flag] ] [ −Nmaskvalues[o] ] [ −Rwest/east/south/north[r] ] [ −V ] [ −Zmin/max] ] [ −:[i|o] ] [ −b[i|o][s|S|d|D][ncol] ] [ −f[i|o]colinfo ]

説明

gmtselect は(経度、緯度)の位置を infiles [又は標準入力]の最初の 2 列か ら読んで、 1 から 6 個の基準を組み合わせて行を通したり止めたりするフ ィ ル タ で あ る 。 行はそれらが 1) 長方形領域の内部( −R [及び −J ])、 2) ptfile のどれかの点から dist km 以内、 3) linefile のどれか の 線 か ら dist km 以内、 4) polygonfile のどれかの多角形の内部、 5) (海岸線に基づ く)地理的な領域の内部、 6) 与えられた範囲の z の範囲にあるかどうかに 基 づいて選択される。これら 6 つの基準による選択領域を反転させるには −I オ プションを使うこと。 (緯度、経度)のファイルを読む方法についてはオプショ ン −: を参照。
オ プションフラグとそれに付属する引き数の間にスペースを入れないこと。オ プションフラグには大文字を使い、その付属コードには小文字を使うこと。

infiles

処理を受けるアスキー(又はバイナリ、 −b 参照)データファイル。 与 えられないときは、標準入力が読み込まれる。

オプション

−A

−N を設定しない限り無視される。 min_area (km^2) より狭い面 積の部分や、階層的に min_level より低いレベル又は max_level よ り 高いレベルの領域は無視される [デフォルトは 0/4 (全ての領域)] 。詳細は pscoast man ページのデータベース情報を参照。

−C

ptfile のどれかの点から dist 以内の位置にある全てのレコード を通す。 dist がゼロのときは ptfile の 3 列目に各点ごとの影響半 径がなければならない。距離はユーザ単位であり、距離が km 単位 で あ ることを示すには、 −fg 又は図法を指定すること。前に f を付け ると(より遅い)正確な大円の計算でなく(より速い)おおよその平面 地 球 の 距離で計算させることができる。ただし、現在の ELLIPSOID が Sphere に設定されているときは、球上での大円計算が使われる。 −b が 使われているかどうかに関わらず ptfile はアスキーでなければな らないので注意。

−D

−N を設定しない限り無視される。用いる海岸線のデータセットの 解 像度を選択する ( (f)ull, (h)igh, (i)ntermediate, (l)ow, 又は (c)rude )。データセットの間で解像度は約 80% 下がる[デフォルトは l ]。異なる解像度を選択したとき、海岸線が細かい部分で異なるため に、ある点が内部[又は外部]に残るかどうかは保証されないので注 意 。

−F

複数セグメントファイル polygonfile の閉じた多角形の内部に位 置する全ての行を通す。球上の多角形(経度、緯度)については、経 度 において 180 度以上の間を置いて点を続けないこと。 −b が使われて いるかどうかに関わらず polygonfile はアスキーでなければならない ので注意。

−H

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

−I

指定した基準の意味を逆にする。

c は点の影響する円の内側でない行を選ぶ。
f
は多角形の内側でない行を選ぶ。
l
は線から指定した距離以内でない行を選ぶ。
r
は指定した長方形領域の内側でない行を選ぶ。
s
−A, −D, −N で指定した領域の内側でない行を選ぶ。
z
−Z により指定された範囲内でない行を選ぶ。

−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]] (線形、対数、 指数スケーリング)

−L

複数セグメントファイル linefile の線分のいずれかか ら dist 以 内 の位置にある全ての行を通す。 dist がゼロのときは linefile のサブヘッダの 2 列目に各線分ごとの距離の値がなければならない。 距 離 は ユーザ単位であり、距離が km 単位であることを示すには、 −fg 又は図法を指定すること。 −b が使われているかどうかに関わ ら ず linefile はアスキーでなければならないので注意。

−M

複数のセグメントからなるファイルであることを意味する。セグ メントは特別な行で区切られる。アスキーファイルでは最初の文字 は flag でなければならない [デフォルトは’>’]。バイナリファイルでは 全てのフィールドが NaN で、 −b に明示的に出力する列数を設定しな け ればならない。デフォルトでは −M の設定は入力と出力の両方に適 用される。別々に設定するには −Mi 及び −Mo を使うこと。

−N

指定した地理的な領域の内側の位置にある全ての行を通す。 2 つ の フ ォ ーマットのうち 1 つを用いて行を無視する (s) か保持する (k) か指定すること。

−Nwet/dry
−N
ocean/land/lake/island/pond
o
を付けるとちょうど境界上に位置する点は外部として扱われる [ デ フォルトでは内側] [デフォルトは s/k/s/k/s (すなわち s/k) で陸地 の全ての点を通す]。

−Z

3 列目 (z) が与えられた範囲内にある全ての行を通す。入力ファ イルは最低 3 つの列を持っていなければならない。最小又は最大に制 限を設けない場合は、ハイフン (-) を指定すること。

−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] の形式でなければならない 。 区切り文字を利用する場合にはその型と位置が指定どおりでなけれ ばならない(ただし入出力と描画フォーマットは変更可能である)。 図 法が与えられないときは暗黙に −Jx1 に設定する。

−V

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

−:

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

−bi

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

−bo

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

−f

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

アスキー形式の精度

数値データのアスキー出力形式は .gmtdefaults4 ファイルのパラメータによっ て決まる。緯度経度は OUTPUT_DEGREE_FORMAT に従ってフォーマットされ、 一 方 、他の値は D_FORMAT に従ってフォーマットされる。フォーマットの結果と して出力の精度が落ちて、その先の処理に影響する可能性があることに注意 す ること。十分な精度で出力されていないと思ったら、バイナリ出力に変更する( もし使えるなら −bo とする)か、 D_FORMAT の設定を用いてより多くの桁数 を 指定すること。

注意

こ のプログラムは長年に渡って進化してきた。元々、 −R 及び −J は地理的な データを取り扱うために必須だったが、現在は球上での計算がフルサポート さ れ ている。そのため、 −J は元々の座標系でなく投影されたデータにテストを 適用したいときにだけ使えば良い。 −J が使われると −C 及び −L により与 え られる距離が投影された距離になる。

pts.d の点のいずれかから 300 km 以内にあって lines.d の線から 100 km よ りも離れている部分集合をデータセットから抽出する。

gmtselect lonlatfile −Jd1d −C300/pts.d −L100/lines.d −Il > subset

ここでは、地理的データを与えていることがわかるように図法を指定しなけ れ ば ならない (さもないと 300 は km でなく x-y の単位のカルテジアン座標の 距離だと解釈されてしまう)。

data.d の点のうち、(高解像度の海岸線で定義される)陸地以外の全ての点を保 持する。

gmtselect data.d −R120/121/22/24 −Dh −Ns/k > subset

球上の多角形 lonlatpath.d の内部にある quakes.d の全ての点を返す。

gmtselect quakes.d −Flonlatpath.d −fg > subset

関連事項

gmtdefaults(l), GMT(l), grdlandmask(l), pscoast(l)