返回介绍

GMT 入门

GMT 实例

GMT 进阶

附录

其他

绘制三维有限断层模型

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

示例贡献者

菲林可乐(作者)、李水平(作者)、陈箫翰(修订)


使用 GMT 绘制有限断层模型的关键,是利用 plot3d -C -L 命令选项绘制一个个小多边形并填充颜色。这就要求用户在绘图之前必须以特定的格式准备数据。以绘制三维有限断层模型为例,用户必须准备好如下格式的多段数据:

# 数据头段
>  -Z1.800000e-01
 # 经度 纬度 深度
 99.3785  34.5324  -0.0010
 99.3574  34.5279  -0.0010
 99.3569  34.5297  -1.9900
 99.3779  34.5342  -1.9900
>  -Z5.000000e-02
 99.3574  34.5279  -0.0010
 99.3363  34.5233  -0.0010
 99.3358  34.5252  -1.9900
 99.3569  34.5297  -1.9900
...

不同小多边形的数据以 > 符号分开,每段数据给出这个小多边形的所有顶点坐标,按顺时针或逆时针顺序排列。 > 符号后面以 -Z 选项给出这个小多边形对应的 Z 值。绘图时将根据这个 Z 值对多边形填充不同的颜色。这种多段数据格式的详细说明请参考 数据段头记录中的额外属性

下面的示例展示了如何基于以上方法绘制三维有限断层模型。

断层示例数据下载: slip_3dgrid.gmt

#!/usr/bin/env bash
#
# 绘制三维有限断层模型

gmt begin 3d_faultslip
    gmt set MAP_FRAME_TYPE plain #设置边框类型
    gmt set MAP_GRID_PEN 0p,gray,- #设置网格线
    
    gmt basemap -R97.3/99.5/34.3/35/-25/0 -JX15c/10c -JZ5c -Bxa0.25fg -Bya0.25fg -Bza10fg+l"Depth (km)" -BwSEnZ -p160/20
    # 为滑移位错量制作 CPT。滑移位错量最小值为 0, 最大值为 5.5
    gmt makecpt -Cwhite,lightblue,yellow,red -T0/5.5/0.2 -Z
    # 绘制有限断层模型
    gmt plot3d slip_3dgrid.gmt -C -L -W0p,gray -p
    
    # 绘制 colorbar
    gmt set FONT_ANNOT_PRIMARY 7p FONT_LABEL 8p
    gmt set MAP_ANNOT_OFFSET_PRIMARY 2p MAP_FRAME_PEN thinner MAP_TICK_LENGTH 2p
    gmt colorbar -C -DjBL+w2.5c/0.3c+h+o1.3c/2c+ml -Ba1 -Bx+l"slip(cm)"
gmt end show
http://www.wenjiangs.com/wp-content/uploads/2023/docimg24/139-pnolcjasybz.png

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

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

发布评论

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