返回介绍

GMT 入门

GMT 实例

GMT 进阶

附录

其他

wiggle

发布于 2023-08-10 21:46:56 字数 7022 浏览 0 评论 0 收藏 0

贡献者

周茂


官方文档

wiggle

简介

绘制沿轨 z = f(x,y) 异常

从文件或者标准输入中读取 (x,y,z),在沿轨方向绘制 z 值。连续的 (x,y) 坐标对定义了沿轨距离轴,z 轴垂直于距离轴,形成右手坐标系。正异常或者负异常都可以带有阴影。

语法

gmt wiggle [ table ]

table

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

-Jprojection (more …)

设置地图投影方式

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

指定数据范围

-Zscale

以数据坐标单位或距离单位指定异常值的缩放因子(即比例尺)。追加 ci 或者 p 表明距离单位分别为 cm,inch 或 point。如果不指定单位,使用 PROJ_LENGTH_UNIT 默认的单位。

可选参数

-A[azimuth]

设置绘制正异常值的方位角,正异常将被“吸引”到该方向。即:如果轨迹的正法线的方位角在 azimuth ± 90 度的范围内,则沿其正法线方向绘制正异常值。如果正法线的方位角在该范围外,则沿负法线的方向绘制正异常值。[默认为 -A0]

-Bparameters (more …)

设置底图边框和轴属性

-Ccenter

绘图前从数据中减去 center,默认值为 0

-D[g|j|J|n|x]refpoint+wlength[+jjustify][+al|r][+odx[/dy]][+l[label]]

使用四种坐标系统定义比例尺的参考点,详见修饰物-定位

  • glon/lat 指定数据坐标为参考点

  • jcode 或者 Jcode 通过 2 个字母的对齐方式码指定锚点作为参考点

  • nxn/yn 指定归一化坐标系(即 0-1)为参考点

  • xx/y 指定绘图坐标 为参考点,追加 cm, inch, 或者 point 用来指定单位

  • +wlength 指定比例尺的长度,单位和数据(z 坐标)的单位一致

  • +jjustify 指定比例尺的锚点 [默认为 ML]

  • +al 将比例尺标签放在比例尺左边 [默认为比例尺右边]

  • +l[label] 指定将 z 坐标的单位用于比例尺标签 [默认无单位]。

比例尺标签的文字属性由 FONT_ANNOT_PRIMARY 控制。比例尺的刻度属性由 MAP_TICK_PEN_PRIMARY 控制。

备注

-Dj 或者 -DJ 选项将会影响锚点的位置,详见修饰物锚点

-F[+cclearances][+gfill][+i[[gap/]pen]][+p[pen]][+r[radius]][+s[[dx/dy/][shade]]]

绘制比例尺的背景面板,详见修饰物-背景面板

  • +gfill 指定面板填充颜色 [默认不填充]

  • +ppen 绘制面板边框。pen 为边框的画笔属性,若不指定 pen,则默认使用 MAP_DEFAULT_PEN

  • +r[radius] 绘制圆角边框,radius 为圆角的半径

  • +i[[gap/]pen] 在边框内部绘制一个内边框,gap 为内外边框空白距离 [默认为 2p], pen 为内边框的画笔属性 [默认使用 MAP_DEFAULT_PEN]

  • +cclearance 设置修饰物与面板之间的空白距离。默认情况下面板的大小由修饰物的大小决定,使用该子选项可以为面板增加额外的尺寸。 clearance 的具体设置包括下面 3 种情况:

    • gap 为四个方向增加相同的空白距离

    • xgap/ygap 分别为 X 方向和 Y 方向指定不同的空白距离

    • lgap/rgap/bgap/tgap 分别为四个方向指定不同的空白距离

  • +s[[dx/dy/][shade]] 设置面板背景阴影。dx/dy 为阴影区相对于面板的偏移量, shade 为阴影区颜色 [默认为 4p/-4p/gray50]

-Gfill[+n][+p]

设置异常值下的阴影填充的颜色和样式。 [默认不填充] 追加 +p 子选项为填充正异常区域 [默认]。追加 +n 子选项为填充负异常区域。追加 +n+p 为使用相同的方式填充正异常和负异常区域。

:如果需要设置正异常和负异常使用不同的填充方式,需要重复使用

下面的示例展示了如果使用 wiggle 模块绘图。示例中使用的数据为 temp.dat

gmt begin wiggle_exam
gmt wiggle temp.dat -R-10/10/-3/3 -JM6i -B -Z100i -DjRM+w100+lnT -Tfaint -Gred+p -W1p -BWSne
gmt end show
http://www.wenjiangs.com/wp-content/uploads/2023/docimg24/609-qedx2yguvse.png

考虑另外一个示例:使用 track.xym 文件绘制沿轨磁异常,移去均值(32000 nTesla),比例尺设置为图上 1 cm 代表实际 500 nTesla。使用 15 cm 宽的立体等角投影,设置刻度间隔为 5 度,正异常阴影为红色,轨迹线宽度为 0.25p,颜色为蓝色:

gmt wiggle track.xym -R-20/10/-80/-60 -JS0/90/15c -Z500 -B5 \
-C32000 -Gred -T0.25p,blue -DjRM+w1000+lnT -V -pdf track_xym

上述示例中,正异常绘制方向为北方向,使用

某些情况下,(x,y) 坐标的有效数字位数不足,导致局部方位角变化较大,异常摆动也较大。使用下面命令可以查看是否存在这种情况:

gmt mapproject -Af yourdata.xyz

如果存在上述情况,可以使用 filter1d 对数据滤波:

awk '{ print NR, $0 }' yourdata.xyz \
| gmt filter1d -Fb5 -N4 --FORMAT_FLOAT_OUT=%.12g > smoothed.xyz

上述命令使用了 5 个点的 boxcar 滤波,然后可以使用处理后的数据绘图。

相关模块

filter1d, basemap, gmtsplit

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文