mask

官方文档

mask

简介

将没有数据的区域裁剪或者覆盖

mask 读取 (x,y,z) 形式的数据并判断哪些网格中哪些节点是可靠的。只有包含一个或者多个数据的节点被认为是可靠的。另外,可以指定影响半径,在数据点半径内的所有节点都是可靠的。同时还可对上述结果取反,即寻找不可靠的节点。在得到可靠/不可靠的节点后,该模块将使用 -T 选项覆盖这些节点,或者使用轮廓创建多边形以剪除不感兴趣的区域。当使用裁剪后,直到第二次该模块调用 -C 选项才可以关闭。

语法

gmt mask [ table ] -Iincrement -Jparameters -Rregion [ -B[p|s]parameters ] [ -C ] [ -Ddumpfile ] [ -F[l|r] ] [ -Gfill ] [ -Jz|Zparameters ] [ -Lnodegrid[+i|o] ] [ -N ] [ -Qcut ] [ -Ssearch_radius ] [ -T ] [ -U[stamp] ] [ -V[level] ] [ -X[a|c|f|r][xshift] ] [ -Y[a|c|f|r][yshift] ] [ -bibinary ] [ -dinodata[+ccol] ] [ -eregexp ] [ -hheaders ] [ -iflags ] [ -pflags ] [ -qiflags ] [ -rreg ] [ -ttransp ] [ -wflags ] [ -:[i|o] ] [ --PAR=value ]

必选选项

table

一个或多个ASCII或二进制表数据。若不提供表数据,则会从标准输入中读取。

-Ixinc[+e|n][/yinc[+e|n]]

指定X和Y方向的网格间隔

  • xincyinc 为 X 和 Y 方向的网格间隔。对于地理坐标,可以指定网格间隔单位 [默认单位为度]

  • +e 微调X和Y方向范围的最大值,使得其是网格间隔的整数倍(默认会微调网格间隔以适应给定的数据范围)

  • +n 表明 xincyinc 不是网格间隔,而是X和Y方向的节点数。此时会根据节点数、网格区域范围以及网格配准方式重新计算网格间隔。

注意:

  • yinc 设置为0,则表示其与 xinc 相同

  • 若使用 -Rgrdfile 选项,则网格间隔和配准方式已经根据网格文件自动初始化,此时依然可以使用 -I-r 覆盖相应的值

-Jprojection (more …)

设置地图投影方式

-Rxmin/xmax/ymin/ymax[+r][+uunit] (more …)

指定数据范围

可选选项

-Bparameters (more …)

设置底图边框和轴属性

-C

终结裁剪;使用该选项后不需要输入文件

-Ddumpfile

将每个裁剪多边形的 (x,y) 坐标输出到 dumpfile 文件,不给定文件则输出到标准输出。该选项不进行绘图。如果 dumpfile 包含 C 语言格式的说明符(例如,%5d 或者 %05d), 多边形将被写入不同的文件,否则都写入到 dumpfile 文件中。-Q 选行可用来排除小多边形。

-F[l|r]

设置裁剪多边形的方向,与 -D 选项同时使用。 -Fl 为向左(逆时针);-Fr 为向右(顺时针)。

-Gfill

对裁剪多边形进行填充

-Lnodegrid[+i|o]

将计算过程中包含 1 和 0 的网格储存到 nodegrid ,1 和 0 分别为选定和不被选定的标记。 +o 选项将无数据的节点转换为 NaN,+i 选项将有数据的节点转转为 NaN

-N

反转选择,即裁剪有数据覆盖的区域

-Qcut

不输出少于 cut 点数的多边形,仅能和 -D 选项共同使用

-Ssearch_radius

设置影响半径。网格节点在数据的影响半径内,就被认为是可靠的,默认半径为 0,即只有数据落入的网格是可靠的,可在半径后追加单位

-T

绘制数据而不是多边形轮廓,使用 -G 选项可以用来设置其中的填充。不能和 -D 选项同时使用

-X[a|c|f|r][xshift[u]]

-Y[a|c|f|r][yshift[u]] (more …)

移动绘图原点

-V[level] (more …)

设置 verbose 等级 [w]

-bi[ncols][type][w][+l|b] (more …)

设置二进制输入数据的格式

-dinodata (more …)

将输入数据中值为 nodata 的列替换为 NaN

-e[~]“pattern” | -e[~]/regexp/[i] (more …)

筛选或剔除匹配指定模式的数据记录

-h[i|o][n][+c][+d][+msegheader][+rremark][+ttitle] (more …)

跳过或生成指定数目的头段记录

-icols[+l][+sscale][+ooffset][,][,t[word]] (more …)

设置输入数据列及简单变换(0表示第一列,t 表示文本列)

-p[x|y|z]azim[/elev[/zlevel]][+wlon0/lat0[/z0]][+vx0/y0] (more …)

设置3D透视视角

-qi[~]rows[+ccol][+a|f|s] (more …)

筛选输入的行或数据范围

-r[g|p] (more …)

设置网格配置方式 [默认为网格线配准]

-t[transp] (more …)

设置图层透明度(百分比)。取值范围为0(不透明)到100(全透明)

-wy|a|w|d|h|m|s|cperiod[/phase][+ccol] (more …)

将输入坐标转换为循环坐标

-:[i|o] (more …)

交换输入或输出中的第一和第二列

-^-

显示简短的帮助信息,包括模块简介和基本语法信息(Windows下只能使用 -

-++

显示帮助信息,包括模块简介、基本语法以及模块特有选项的说明

-? 或无参数

显示完整的帮助信息,包括模块简介、基本语法以及所有选项的说明

--PAR=value

临时修改GMT参数的值,可重复多次使用。参数列表见 配置参数

距离单位

GMT支持多种不同的距离单位,以及三种不同的球面距离计算方式。详情见 单位-j 选项

示例

假设数据的影响范围为 5 度,对其中影响的网格范围填充为黄色

gmt begin mask
gmt math -T-90/90/10 -N2/1 0 = | gmt mask -Gyellow -I30m -R-75/75/-90/90 -JQ0/7i \
    -S5d -T -Bafg10 -BWSne+t"Mask for points with r = 5 degrees"
gmt end show

使用裁剪多边形制作 mask,将其中没有控制数据的部分覆盖

gmt mask africa_grav.xyg -R20/40/20/40 -I5m -JM10i -pdf mask

使用和上面的例子相同的数据,但这次将裁剪多边形保存到文件 all_pols.txt

gmt mask africa_grav.xyg -R20/40/20/40 -I5m -Dall_pols.txt

类似第二个例子,但这次对数据覆盖的部分进行填充

gmt mask africa_grav.xyg -R20/40/20/40 -I5m -JM10i -T -Gwhite -pdf mask

相关模块

grdmask, surface, basemap, clip