gmtbinstats

官方文档

gmtbinstats

简介

对落入网格节点内的空间数据进行统计

gmtbinstats 将表数据放到网格中,对给定半径的每个节点的数据进行统计,例如:面积归一化,密度估计等操作。网格的节点可以为矩形或六边形。

语法

gmt gmtbinstats [ table ] -Goutgrid -Iincrement -Ca|d|g|i|l|L|m|n|o|p|q[quant]|r|s|u|U|z -Rregion -Ssearch_radius [ -Eempty ] [ -N ] [ -T[h|r] ] [ -V[level] ] [ -W[+s] ] [ -aflags ] [ -bibinary ] [ -dinodata[+ccol] ] [ -eregexp ] [ -fflags ] [ -ggaps ] [ -hheaders ] [ -iflags ] [ -nflags ] [ -qiflags ] [ -rreg ] [ -wflags ] [ -:[i|o] ] [ --PAR=value ]

必选选项

table

2-4 列的表数据,当包含第四列时,其为权重,必须使用 -W 选项来表明数据带权。 -Cn 将会只接收两列数据。

-Ca|d|g|i|l|L|m|n|o|p|q[quant]|r|s|u|U|z

对每个网格节点进行数据统计,下面将展示各选项含义:

  • a 均值

  • d 绝对中位差(median absolute deviation,MAD)

  • g 数据范围 (max-min)

  • i 25-75% 的四分位数范围

  • l 最小值

  • L 最小的正值

  • m 中位数

  • n 数据个数

  • o for LMS scale,

  • p for mode (maximum likelihood)

  • q quant 分位数, 0 <= quant <= 100,默认值为 50

  • r RMS

  • s STD

  • u 最大值

  • U 最大的负值

  • z 求和

-Goutgrid[=ID][+ddivisor][+ninvalid] [+ooffset|a][+sscale|a] [:driver[dataType][+coptions]]

输出网格名。各子选项含义见 网格文件

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

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

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

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

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

注意:

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

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

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

指定数据范围

可选参数

-Eempty

设置空节点值为 empty ,默认为 NaN

-N

以节点的面积对节点值进行归一化

-Ssearch_radius

设置搜索范围,可追加单位。使用此选项时不能使用 -T 选项

-T[h|r]

设置网格节点形状:

  • h 六边形,仅适用于笛卡尔坐标。将六边形的中心和统计结果写到标准输出或 -G 指定的文件中;-I 设置仅针对 Y 坐标的增量,X 方向增量会自动计算,-R 设定的范围会被调整以适应整数个六边形

  • r 矩形,使用 -I 可设置该矩形大小,将计算结果写到 -G 指定的网格中

-W[+s]

加权计算统计量,使用该选项计数将变为权重的和而不是数据的个数。如果权重是由不确定度(一倍中误差 sigma)决定的,使用 +s 选项可计算权重 weight = 1/sigma

-V[level] (more …)

设置 verbose 等级 [w]

-acol=name[,…] (more …)

设置非空间数据项与数据列之间的对应关系

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

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

-dinodata (more …)

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

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

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

-f[i|o]colinfo (more …)

指定输入或输出列的数据类型

-g[a]x|y|d|X|Y|D|[col]zgap[+n|p] (more …)

确定数据或线段的间断

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

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

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

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

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

筛选输入的行或数据范围

-r[g|p] (more …)

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

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

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

-:[i|o] (more …)

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

-^-

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

-++

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

-? 或无参数

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

--PAR=value

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

距离单位

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

示例

远程文件 capitals.gmt 中包含了人口数据,在 5 度分辨率的网格中,统计半径 1000 km 内的人口,使用默认投影和颜色绘制网格

gmt begin map
gmt gmtbinstats @capitals.gmt -a2=population -Rg -I5 -Cz -Gpop.nc -S1000k
    gmt grdimage pop.nc -B
gmt end show

对文件 mydata.txt 中的数据进行六边形网格的分选,计算每个节点中点的个数

gmt gmtbinstats mydata.txt -R0/5/0/3 -I1 -Th -Cn > counts.txt

相关模块

blockmean, blockmedian, blockmode, nearneighbor, triangiulate, xyz2grd