✍️ 田冬冬 , 陈箫翰 , 何星辰 , 王亮 • 📅 2026-01-15

# velo

官方文档:

  velo

简介:

  在地图上绘制速度矢量、各向异性矢量、应变十字和旋转楔形图

从文件或标准输入读取数据值，并在地图上绘制所选的大地测量符号。 可以选择速度矢量及其不确定度、旋转楔形及其不确定度、各向异性矢量或应变十字。 符号的填充或其轮廓可以基于固定参数或通过颜色查找表 CPT 进行着色。

四种不同的测量符号：旋转楔形、带有矢量的速度误差椭圆、各向异性矢量和应变十字。前两种符号可以为主符号及其误差部分分别选择颜色和画笔属性。

## 语法

gmt velo [ table ] `-S` format[scale][/args][+f font] [ `-A` parameters ] [ `-B`[p|s]parameters ] [ `-C` cpt] [ `-D` scale ] [ `-E` fill ] [ `-G` fill ] [ `-H`[scale] ] [ `-I`[intens] ] [ `-J` parameters ] [ `-L`[pen[+c[f|l]]] ] [ `-N` ] [ `-R` west/east/south/north[+r][+u unit] ] [ `-U`[stamp] ] [ `-V`[level] ] [ `-W`[pen][+c[f|l]] ] [ `-X`[a|c|f|r][xshift] ] [ `-Y`[a|c|f|r][yshift] ] [ `-Z`[m|e|n|u][+e] ] [ `-di` nodata[+c col] ] [ `-e` regexp ] [ `-h` headers ] [ `-i` flags ] [ `-p` flags ] [ `-qi` flags ] [ `-t` transp ] [ `-:`[i|o] ] [ --PAR=value ]

## 输入数据

table

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

## 必须选项

-S

-S

  决定要绘制哪一种符号，及其输入数据的格式。 缩放比例的单位均为“每长度单位的数据单位”，尺寸则以长度单位表示，默认长度单位受 PROJ_LENGTH_UNIT 控制。 可以自行指定单位为 c 、 i 或 p 。

  -Se[velscale/]confidence[+f font]

    速度矢量，以椭圆表示不确定度。 velscale 设置速度箭头的缩放比例。如果未给出 velscale ，则数据文件中必须有 velscale 列。 confidence 设置椭圆的二维置信区间的极限，例如 0.95 代表 95% 置信椭圆。 使用 +f 设置标注文本的字体和大小 [默认值 9p,Helvetica,black]。给定 +f0 则禁用标注文本。 箭头将使用 `-W` 选项指定的画笔属性绘制，箭头头部通过 `-G` 填充。 椭圆使用 `-E` 选项填充 [默认透明]，如果使用 `-L` ，则使用选定的画笔绘制其轮廓（若 `-L` 未指定，则使用 `-W` ）。 注意：如果 confidence 不为零且既未设置 `-L` 也未设置 `-E` ，则使用 `-W` （或默认值）绘制椭圆轮廓。 输入数据中每列的含义为：

    > 1. 起点的经度

    > 2. 起点的纬度

    > 3. 矢量的东向分量

    > 4. 矢量的北向分量

    > 5. 东向分量的不确定度（1-sigma）

    > 6. 北向分量的不确定度（1-sigma）

    > 7. 东向分量和北向分量的 correlation

    > 8. 标注文本（可选）

  -Sn[barscale]

    绘制各向异性矢量。 barscale 设置缩放比例。如果未给出 barscale ，则数据文件中必须有 barscale 列。 矢量头参数 shape 默认为 0.1,可以使用 `-A` 的附加参数 +h shape 进行修改。 输入数据中每列的含义为：

    > 1. 经度

    > 2. 纬度

    > 3. 各向异性矢量的东向分量

    > 4. 各向异性矢量的北向分量

  -Sr[velscale/]confidence[+f font]

    与 -Se 类似，区别在于输入文件不同：

    > 1. 起点的经度

    > 2. 起点的纬度

    > 3. 矢量的东向分量

    > 4. 矢量的北向分量

    > 5. 椭圆的半长轴

    > 6. 椭圆的半短轴

    > 7. 椭圆的长轴相对于水平方向逆时针旋转的角度

    > 8. 标注文本（可选）

  -Sw[wedgescale/]wedgemag

    旋转楔形图，由两个同心扇形组成。一个扇形是旋转楔形图本身，另一个扇形则表示不确定度。 wedgescale 设置旋转楔形的半径。不确定度扇形的半径固定为旋转楔形的半径的三分之二。 如果未给出 wedgescale ，则数据文件中必须有 wedgescale 列。 使用 `-G` 设置楔形的填充色，使用 `-E` 设置不确定度扇形的填充色。输入数据中每列的含义为：

    > 1. 经度

    > 2. 纬度

    > 3. 楔形表示的年旋转率，单位 rad/yr

    > 4. 不确定度(1-sigma)，单位 rad/yr

    楔形的扇形角度为年旋转率乘以 wedgemag ，不确定度的扇形角度为不确定度乘以 wedgemag 再乘以 2（即 2-sigma）。 绘制时，固定从正北开始，顺时针绘制楔形对应的扇形。再以楔形的结束角度为中心，向顺时针和逆时针两个方向绘制不确定度扇形(2-sigma)。

  -Sx[cross_scale]

    绘制应变十字线。 cross_scale 控制十字线的大小。如果未给出 cross_scale ，则数据文件中必须有 cross_scale 列。输入文件中每列的含义为：

    > 1. 经度

    > 2. 纬度

    > 3. eps1：应变张量的最大本征值，扩张为正，压缩为负

    > 4. eps2：应变张量的最小本征值，扩张为正，压缩为负

    > 5. eps2的方位角（北方向顺时针旋转的角度）

## 可选选项

-A

-A parameters

  修改矢量的属性。例如令 parameters = 0.3c 设置矢量头的大小。注意默认情况下，矢量头的大小不随着矢量线的长度变化而变化。 当矢量线过短时，会出现矢量箭头不绘制的情况。此时可以添加 +n norm 属性让箭头大小随矢量成比例变化。 更多设置和详细说明见 矢量/箭头 一节。

-B

-B parameters

  设置底图边框和轴属性。 (参数详细介绍)

-C

-C cpt

  提供一个 CPT 文件，符号填充色根据 `-Z` 设置的数值从 CPT 中查找。不要和 `-G` 一起使用。

-D

-D scale

  控制 -Se 和 -Sr 以及 -Sw 中不确定度的缩放。

-E

-E fill

  设置 -Se 和 -Sr 中速度误差椭圆的填充色，或 -Sw 中不确定度扇形的填充色。不设置本项则为透明。 注意： 使用 `-C` 和 `-Z`+e 将会根据 `-Z` 设置的数值从 CPT 中查找填充色。此时本选项无效。

-G

-G fill

  设置符号的填充色。 注意： 使用 `-C` 和 `-Z` 会覆盖本选项。

-H

-H[scale]

  使用 scale 作为缩放比例对符号大小和画笔宽度进行缩放。如果不指定 scale 则输入数据中必须要提供一列 scale 数据列，位置在 z 和 size 列之后。

-I

-I intens

  提供光照强度 intens （范围 ±1 之间），通过模拟光照来调节符号的填充颜色 [默认无]。 如果未提供光照强度值，将从输入数据中读取 intens 列。

-J

-J projection

  设置地图投影方式。 (参数详细介绍)

-L

-L[pen[+c[f|l]]]

  绘制椭圆和旋转楔形的轮廓。不指定画笔属性 pen 则默认使用 `-W` 设置的画笔属性。

  - 附加 +cl 则 `-C` 设置的 CPT 将控制画笔的颜色。

  - 附加 +cf 则 CPT 文件的颜色仅应用于误差填充 [默认]。

  - 附加 +c 则会将 CPT 设置同时应用于画笔和填充的颜色。

-N

-N

  不跳过区域范围外的符号

-R

-R xmin/xmax/ymin/ymax[+r][+u unit]

  指定数据范围。 (参数详细介绍)

-U

-U[label][+c][+j just][+o dx/dy]

  在图上绘制GMT时间戳logo。 (参数详细介绍)

-V

-V[level]

  设置 verbose 等级 [w]。 (参数详细介绍)

-W

-W[pen][+c[f|l]]

  设置速度箭头、椭圆轮廓和断层面边缘的画笔属性 [默认值：宽度 = 0.25p，颜色 = 黑色，样式 = 实线]。

  - 附加 +cl 则 `-C` 设置的 CPT 将控制画笔的颜色。

  - 附加 +cf 则 CPT 文件的颜色仅应用于误差填充 [默认]。

  - 附加 +c 则会将 CPT 设置同时应用于画笔和填充的颜色。

-X

-Y

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

-Y[a|c|f|r][yshift[u]]

  移动绘图原点。 (参数详细介绍)

-Z

-Z[m|e|n|u][+e]

  选择与 `-C` 配合使用设置填充颜色的物理量。可选择：

  > - m ：矢量长度或楔形的旋转率

  > - e ：东西方向速度

  > - n ：南北方向速度

  > - u ：用户提供的数据列（位于必需列之后提供）

  若要改用相应的不确定度估计值（即矢量不确定度或楔形的不确定度）来查询颜色并为误差椭圆或楔形着色，请附加 +e 。

-di

-di nodata

  将输入数据某些特定值当作NaN。 (参数详细介绍)

-e

-e[~]"pattern" | -e[~]/regexp/[i]

  筛选或剔除匹配指定模式的数据记录。 (参数详细介绍)

-h

-h[i|o][n][+c][+d][+m segheader][+r remark][+t title]

  在读/写数据时跳过文件开头的若干个记录。 (参数详细介绍)

-i

-i cols[+l][+s scale][+o offset][,...][,t[word]]

  对输入的数据进行列选择以及简单的代数运算。 (参数详细介绍)

-p

-p[x|y|z]azim[/elev[/zlevel]][+w lon0/lat0[/z0]][+v x0/y0]

  设置3D透视视角。 (参数详细介绍)

-qi

-qi[~]rows[+c col][+a|f|s]

  筛选输入的行或数据范围。 (参数详细介绍)

-t

-t[transp]

  设置图层透明度（百分比）。取值范围为0（不透明）到100（全透明）。 (参数详细介绍)

-:

-:[i|o]

  交换输入或输出数据的前两列。 (参数详细介绍)

-^ 或 -

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

-+ 或 +

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

-? 或无参数

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

--PAR=value

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

## 数据列顺序

`-S` 选项决定了输入数据需要多少个数据列。 此外，使用 `-H` 、 `-I` 和 `-t` 选项， 以及不带 size 的 `-S` 选项或通过 `-Z` u 选择用于颜色查询的用户列，都需要额外的数据列。 数据列的顺序是固定的，与选项出现的顺序无关。数据列要求按以下顺序排列:

    lon lat symbol-columns [usercol] [size] [scale] [intens] [transp [transp2]] [trailing-text]

其中 symbol-columns 代表 `-S` 选项通常需要的列。方括号中的项是可选的，受对应选项的控制。尾部文本始终是可选的。 注意：可以使用 `-i` 来重新排列数据记录以匹配预期的格式。

## 示例

生成带有绿色椭圆的大红色箭头，并带有红色轮廓。请注意，39% 的置信度缩放将生成一个正好嵌入在尺寸为 Esig 乘以 Nsig 的矩形内的椭圆：

    #!/usr/bin/env bash

    gmt begin velo_ex1
    gmt velo -R-10/10/-10/10 -W0.6p,red -Egreen -L -Se0.2/0.39/18 -B1g1 -Jx0.4/0.4 -A0.3c+p1p+e+gred << EOF
    #Long. Lat. Evel Nvel Esig Nsig CorEN SITE
    #(deg) (deg) (mm/yr) (mm/yr)
    0. -8. 0.0 0.0 4.0 6.0 0.500 4x6
    -8. 5. 3.0 3.0 0.0 0.0 0.500 3x3
    0. 0. 4.0 6.0 4.0 6.0 0.500
    -5. -5. 6.0 4.0 6.0 4.0 0.500 6x4
    5. 0. -6.0 4.0 6.0 4.0 -0.500 -6x4
    0. -5. 6.0 -4.0 6.0 4.0 -0.500 6x-4
    EOF
    gmt end show

velo示例图1

绘制加利福尼亚州西横向山脉（Western Transverse Ranges）的一些残余旋转速率。楔形将呈现为深灰色，并使用浅灰色楔形表示 2-sigma 不确定度：

    #!/usr/bin/env bash

    gmt begin velo_ex2
    gmt velo -Sw0.4i/1.e7 -W0.75p -Gdarkgray -Elightgray -D2 -Jm2.2i -Ra -Baf -BWeSn << EOF
    #lon lat spin(rad/yr) spin_sigma (rad/yr)
    241.4806 34.2073 5.65E-08 1.17E-08
    241.6024 34.4468 -4.85E-08 1.85E-08
    241.0952 34.4079 4.46E-09 3.07E-08
    241.2542 34.2581 1.28E-07 1.59E-08
    242.0593 34.0773 -6.62E-08 1.74E-08
    241.0553 34.5369 -2.38E-07 4.27E-08
    241.1993 33.1894 -2.99E-10 7.64E-09
    241.1084 34.2565 2.17E-08 3.53E-08
    EOF
    gmt end show

velo示例图2

Kurt L. Feigl, Department of Geology and Geophysics at University of Wisconsin-Madison, Madison, Wisconsin, USA

## 相关模块

basemap, plot