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
附录
其他
命令初探
上一节我们使用 GMT 绘制了第一张图,但是没有对其中的细节做任何介绍。这一节我们将简单介绍一下 GMT 的命令。
GMT 绘图脚本模板
GMT 在绘图时,总是以 begin 开始,并以 end 结束。所有的绘图命令都放在 begin 与 end 之间,而非绘图命令可以放在任何地方。
备注
GMT 老用户可能会对此比较陌生。
GMT 自 6.0.0 版本开始,引入了一种全新的绘图命令执行模式,称之为现代模式。GMT5 及之前的命令风格称之为经典模式。GMT6 既支持经典模式也支持现代模式。现代模式与经典模式可以完成相同的绘图功能,但现代模式大大简化了绘图代码,并极大避免了用户最容易出错的地方,因而推荐用户使用现代模式而非经典模式。
本手册将只使用现代模式,而不介绍经典模式。GMT 新用户只需要按照本手册直接学习现代模式即可;对于 GMT 老用户,建议阅读 经典模式 → 现代模式 或者观看视频教程 GMT6 新特性,并开始使用现代模式进行绘图。
在前一节中我们使用 gmt --new-script
命令生成一个绘图模板。忽略掉绘图模板中的注释语句,一个最最基本的 GMT 绘图脚本的模板是:
gmt begin # # 其它命令,包括 GMT 绘图命令、数据处理命令以及其它 UNIX 命令 # gmt end show
你可以直接执行这个脚本,但是因为这里什么命令也没用,所以这个脚本不会生成任何图片。
绘图时我们通常需要指定图片文件名和图片格式,因而更实用的绘图脚本模板为:
gmt begin FigureName pdf # # 其它命令,包括 GMT 绘图命令、数据处理命令以及其它 UNIX 命令 # gmt end show
FigureName 指定了要生成的图片文件名,你可以指定任意文件名,但最好避免在文件名中使用特殊符号和空格。若不给定文件名,则默认文件名为
gmtsession
紧跟在图片文件名后的 pdf 指定了要生成的图片格式(若不指定格式,则默认图片格式为 PDF)。GMT 支持多种图片格式,pdf、ps、eps、jpg、png、bmp 等等。若想要一次性生成多种格式的图片,则可以使用逗号将多种格式连接起来,如 pdf,png 会同时生成 PDF 和 PNG 格式的图片
gmt end 后面加上 show,则 GMT 会在绘图完成后,使用系统自带的阅读器软件自动打开生成的图片文件,供用户预览绘图效果
绘制第一张图
在 GMT 绘图脚本模板的基础上,向 begin 和 end 语句中间加入正确的 GMT 绘图命令,即可实现用 GMT 绘图。
下面的脚本使用 coast 绘制了一张全球地图。执行该脚本,会生成文件名为 GlobalMap
、格式为 PNG 和 PDF 的图片文件,并且 GMT 会在绘图结束后自动打开生成的图片文件。
gmt begin GlobalMap gmt coast -Rg -JH15c -Gpurple -Baf -B+t"My First Plot" gmt end show
使用 GMT 绘制的第一张图
一个 GMT 命令通常由 gmt + 模块名 + 选项 + 参数 构成。比如上面的例子中:
gmt coast -Rg -JH15c -Gpurple -Baf -B+t"My First Plot"
所有的 GMT 命令都需要以 gmt 开头
coast 是模块名,这个模块可以用于绘制海岸线
-R、-J、-G、-B等以 - 开头的是模块的选项
-Baf 中 af 是 -B 选项的参数
-B+t“My First Plot” 中 +t 为 -B 的子选项,”My First Plot” 则是子选项 +t 的参数
关于 GMT 命令的几点说明:
若模块名以 gmt 开头,则模块名中的 gmt 可省略。比如 gmt gmtset xxx xxx 可简写为 gmt set xxx xxx
模块名、选项等均区分大小写
选项以 - 开头,后接单个字符表示某个选项,字符后接选项的参数以及子选项
子选项以 + 开头,后接单个字符以及子选项的参数
不以 - 开头的参数,通常都会被当做文件,GMT 会尝试去读取
各选项间以空格分隔,选项内部不能有空格。选项内部的字符串中若存在空格,在 Bash 下可以使用单引号或双引号括起来,而在 Windows 的 Batch 下则只能使用双引号。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论