GMT 入门
GMT 实例
GMT 进阶
- 基础知识
- 表数据
- 网格文件
- 颜色表 CPT
- 标准选项
- 地图投影
- -JX: Linear, logarithmic, power, and time
- -JP: Polar/Cylindrical
- -JA: Lambert azimuthal equal area
- -JB: Albers conic equal area
- -JC: Cassini cylindrical
- -JCyl_stere: Cylindrical stereographic
- -JD: Equidistant conic
- -JE: Azimuthal equidistant
- -JF: Azimuthal gnomonic
- -JG: Azimuthal orthographic/General perspective
- -JH: Hammer equal area
- -JI: Sinusoidal equal area
- -JJ: Miller cylindrical
- -JK: Eckert equal area
- -JL: Lambert conic conformal
- -JM: Mercator cylindrical
- -JN: Robinson
- -JO: Oblique Mercator
- -JPoly: (American) polyconic
- -JQ: Equidistant cylindrical
- -JR: Winkel Tripel
- -JS: General stereographic
- -JT: Transverse Mercator
- -JU: Universal Transverse Mercator (UTM)
- -JV: Van der Grinten
- -JW: Mollweide
- -JY: Cylindrical equal area
- 配置参数
- 地学数据集
- 中国地理空间数据集
- 中文支持
- API
- 模块手册
- basemap
- begin
- clear
- clip
- coast
- colorbar
- contour
- coupe
- end
- figure
- filter1d
- fitcircle
- gmt
- gmt-config
- gmtbinstats
- gmtconnect
- gmtdefaults
- gmtget
- gmtinfo
- gmtlogo
- gmtmath
- gmtselect
- gmtset
- gmtsimplify
- gmtspatial
- gmtsplit
- gmtvector
- gmtwhich
- grd2cpt
- grd2xyz
- grdblend
- grdclip
- grdcontour
- grdconvert
- grdcut
- grdedit
- grdfill
- grdimage
- grdinfo
- grdlandmask
- grdmask
- grdmath
- grdpaste
- grdproject
- grdsample
- grdtrack
- grdtrend
- grdvector
- grdview
- grdvolume
- gshhg
- histogram
- image
- img2google
- img2grd
- kml2gmt
- makecpt
- mapproject
- mask
- meca
- nearneighbor
- plot
- polar
- project
- psconvert
- rose
- sac
- sample1d
- solar
- spectrum1d
- sph2grd
- sphdistance
- sphinterpolate
- sphtriangulate
- surface
- ternary
- text
- triangiulate
- velo
- wiggle
- x2sys_binlist
- x2sys_cross
- x2sys_datalist
- x2sys_get
- x2sys_init
- x2sys_list
- x2sys_merge
- x2sys_put
- x2sys_report
- x2sys_solve
- xyz2grd
- mgd77manage
- mgd77convert
- mgd77header
- mgd77info
- mgd77list
- mgd77magref
- mgd77path
- mgd77sniffer
- mgd77track
- legend
- docs
- subplot
- inset
附录
其他
-j 选项
-j 选项用于控制球面上两点间距离的计算方式。其语法为:
-je|f|g
在计算地球或其它星体上任意两点间的距离时,GMT 提供了三种不同的计算方式:平面距离、大圆路径距离和测地线距离。用户可以根据自己的需求选择适合的距离计算方式。
-jg 将地球当做球体,用大圆路径公式计算球面距离 [GMT默认使用此方式]
-jf 使用展平地球公式计算球面距离。此种方式计算速度快但精度低
-je 使用测地线公式计算球面距离,计算距离时考虑了地球椭率。此种方式计算速度慢但精度最高。
平面距离
地球上任意两点 A 和 B 的平面距离计算公式:
\[d_f = R \sqrt{(\theta_A - \theta_B)^2 + (\cos \left [ \frac{\theta_A + \theta_B}{2} \right ] \Delta \lambda)^2}\]其中 R 是地球平均半径(由参数 PROJ_ELLIPSOID 和 PROJ_MEAN_RADIUS 控制), \(\theta\) 是纬度, \(\Delta \lambda = \lambda_A - \lambda_B\) 是经度差。式中地理坐标的单位均是弧度,且需要考虑到跨越经度的周期性问题。
该方法的特点是计算速度快但精度不高,适用于纬度相差不大且对计算效率要求不高的情况。
大圆路径距离
该方法将地球近似为一个半径为R的球,地球上任意两点 A 和 B 的大圆路径距离可以用 Haversine 公式 计算:
\[d_g = 2R \sin^{-1} {\sqrt{\sin^2\frac{\theta_A - \theta_B}{2} + \cos \theta_A \cos \theta_B \sin^2 \frac{\lambda_A - \lambda_B}{2}} }\]该方法是 GMT 默认使用的距离计算方法,适用于大多数情况。
如下GMT 参数可以控制大圆路径距离的计算细节,分别是:
PROJ_ELLIPSOID 设置地球椭圆
PROJ_MEAN_RADIUS 设置地球平均半径的计算方式
PROJ_AUX_LATITUDE 指定将大地纬度转换为多个适合球状近似的辅助纬度中的其中一个(仅当 PROJ_ELLIPSOID 不为 sphere 时有效)
测地线距离
地球上两点间的精确距离可以用 Vincenty (1975) 的完全椭球公式计算。该方法计算得到的距离精度最高精确到 0.5 毫米,同时也是计算速度最慢的方式。
如下参数可以控制大圆路径的计算细节:
PROJ_ELLIPSOID 设置地球椭圆
PROJ_MEAN_RADIUS 设置地球平均半径的计算方式
PROJ_AUX_LATITUDE 指定将大地纬度转换为多个适合球状近似的辅助纬度中的其中一个(仅当 PROJ_ELLIPSOID 不为 sphere 时有效)
PROJ_GEODESIC: 设置完全椭球公式。默认为 Vincenty,还可以设置为 Rudoe (GMT4所使用的计算公式)或 Andoyer (近似公式,精确到10米量级)。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论