✍️ 田冬冬 , 陈箫翰 • 📅 2026-01-11

# segy

官方文档:

  segy

简介:

  绘制二维 SEGY 文件

读取一个原生（IEEE）格式的 SEGY 文件，并生成地震数据的绘图。使用 imagemask 操作符将地震数据以单色或灰度（由用户指定）1-bit 深度位图的形式绘制，背景为透明。位图分辨率取自当前的 GMT 默认设置。通过使用道头中的信息，可以在真实位置绘制地震道（此时，文件中道的顺序无关紧要）。标准的 GMT 几何处理方法被用于绘制，因此原则上可以采用任何地图投影。然而，地理投影可能会导致意外的结果。另外需注意，某些参数具有非标准含义。

需要注意的是，在绘制地震数据之前，处理操作顺序为：deviation*[clip]([bias]+[normalize](sample value))。 其中，deviation 决定了在绘图坐标系中，经过 [normalized][biased][clipped] 处理后的样本值为 1 时，与道位置的偏移距离。可以理解为对采样值进行进一步缩放。

SEGY 文件应包含 3200 字节的文本头部（将被忽略）、400 字节的二进制卷头、以及每道 240 字节的头部

## 语法

gmt segy SEGYfile `-J` parameters `-R` region `-D` deviation `-F`[color] `-W` [ `-C` clip ] [ `-E` error ] [ `-I` ] [ `-L` nsamp ] [ `-M` ntrace ] [ `-N` ] [ `-Q` b|i|u|x|y value ] [ `-S` header ] [ `-T` filename ] [ `-U`[stamp] ] [ `-V`[level] ] [ `-X`[a|c|f|r][xshift] ] [ `-Y`[a|c|f|r][yshift] ] [ `-Z` ] [ `-p` flags ] [ `-t` transp ] [ --PAR=value ]

## 输入数据

SEGYfile

  地震 SEGY 数据文件

## 必须选项

-J

-J projection

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

-R

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

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

-D

-D deviation

  deviation 决定了在绘图坐标系中， 经过 [normalized][biased][clipped] 处理后的样本值为 1 时， 与道位置的偏移距离。可以理解为对采样值进行进一步缩放。

-F

-F[color]

  填充地震道（可变面积，默认填充正值）。指定用于填充 imagemask 的颜色 color 。

-W

-W

  绘制波形道。

注意： 必须 在 `-W` 和 `-F` 之中指定至少一个选项。

## 可选选项

-A

-A

  切换默认的字节顺序状态（默认假设数据为大端字节序）。

-C

-C clip

  设置进行数据裁剪的采样值（裁剪同时应用于正值和负值）。

-E

-E error

  使用 `-T` 选项时，允许请求的道位置与实际道位置之间存在误差范围 error 。

-I

-I

  填充负偏移而非正偏移

-L

-L

  覆盖卷头中每道的样本数量（程序会尝试根据每道头部确定样本数量，以支持变长道）

-M

-M

  覆盖卷头中指定的道数。程序会相对优雅地检测文件结束，但此参数限制了程序尝试读取的道数。

-N

-N

  通过全道长度上的均方根振幅(rms amplitude)归一化地震道

-Q

-Q b|i|u|x|y value
  可以通过指令修改五种不同的设置（可重复使用）：

    -Qb bias 为缩放后的地震道添加偏移 (-Qb-0.1 从值中减去0.1).

    -Qi dpi 设置图像的每英寸像素点分辨率 [默认值300].

    -Qu redvel 应用减速速度（负值移除已有的减速）。

    -Qx mult 将道位置乘以 mult 倍。

    -Qy dy 覆盖 SEGY 卷头中的采样间隔。

-S

-S header

  从道头headers读取道位置 : header 设置为 c 表示 CDP, o 表示偏移, 设置为 b num 表示从头部的第 num 字节（第一个字节对应 num = 0）读取一个长整型数。 默认情况下，道位置由道编号决定。

-T

-T filename

  仅绘制其位置对应于 filename 中列出位置的道。道的列出顺序无关紧要，程序会在整个空间中检查每个道。

-U

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

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

-V

-V[level]

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

-X

-Y

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

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

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

-Z

-Z

  不绘制 rms amplitude 为0的道。

-p

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

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

-t

-t[transp]

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

-^ 或 -

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

-+ 或 +

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

-? 或无参数

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

--PAR=value

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

## 示例

绘制 SEGY 文件 wa1.segy，其中归一化的地震道按照真实偏移位置绘制， 振幅限制在 ±3，并以黑色显示振幅曲线和正值区域填充

    gmt segy wa1.segy -JX5i/-5i -R0/100/0/10 -D1 -C3 -N -So -W -Fblack -pdf segy

绘制 SEGY 文件 wa1.segy，其中地震道按照真实的 CDP*0.1 绘制， 振幅限制在 ±3，偏移值为 -1，并以红色填充负值区域

    gmt segy wa1.segy -JX5i/-5i -R0/100/0/10 -D1 -C3 -Sc -Qx0.1 -Fred -Qb-1 -I -pdf segy

绘制一个3秒，32道的 SEGY 文件。示例数据：`segy/XB1-Z.sgy`

    #!/usr/bin/env bash
    gmt begin segy1
        gmt basemap -JX5i/-5i -R0/33/0/3 -Bxaf+ltraces -Byaf+l"t (s)"
        gmt segy XB1-Z.sgy -D0.1 -N -W
    gmt end show

## 相关模块

segyz, segy2grd