返回介绍

GMT 入门

GMT 实例

GMT 进阶

附录

其他

sphdistance

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

贡献者

周茂


官方文档

sphdistance

简介

在球上创建 Voronoi 距离,节点或自然最邻近网格

sphdistance 读取一个或多个 ASCII(或二进制)坐标文件,使用所有的坐标创建 Voronoi 图。得到的多边形用来创建球面上的网格,其中网格值为到坐标文件中坐标的最近距离(见

gmt sphdistance [ table ]

table

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

-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 …)

指定数据范围

可选选项

-C

用于节省内存。该模块默认在运算过程中同时保存地理坐标和笛卡尔坐标,但对于大型数据集,这可能会占据很大内存,因此使用该选项可以只保留其中一种坐标以节省内存,必要的时候 GMT 会自动实现坐标转换。在使用

创建一个球面网格,网格值为到 hotspots.txt 文件中点的最近距离,然后以 200 km 为间隔在球面网格创建等值线,每 1000 km 设置标注

gmt begin map
    gmt sphtriangulate @hotspots.txt -Qv -D > t.txt
    gmt sphdistance -Rg -I1 -Qt.txt -Gt.nc -Lk
    gmt grdcontour t.nc -JG-140/30/7i -C200 -A1000 -Bafg
gmt end show

testdata.txt 创建 Voronoi 图,并生成 1 度分辨率的全球距离网格

gmt sphdistance testdata.txt -Rg -I1 -Gglobedist.nc

上述代码也可分成两个命令

gmt sphtriangulate testdata.txt -Qv > voronoi.txt
gmt sphdistance -Qvoronoi.txt -Rg -I1 -Gglobedist.nc

此外, GMT 官方示例 35 展示了使用本模块和全球海岸线创建海洋到海岸线的距离网格。

注意事项

STRIPACK 算法需要输入中不包含重复点。 blockmean 等模块可以将多个接近的点合并成单个点。sphdistance

Renka, R, J., 1997, Algorithm 772: STRIPACK: Delaunay Triangulation and Voronoi Diagram on the Surface of a Sphere, AMC Trans. Math. Software, 23(3), 416-434.

相关模块

sphtriangulate, triangiulate

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

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

发布评论

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