gmtsph-regional 是一个 shell 脚本,基于 GMT5 在球坐标系下绘制区域网格数据。它的设计目的是让你能够快速浏览一个 .nc 或 .grid 文件的整体面貌,省去每次都要敲一长串 GMT 命令的麻烦。对于更精细、定制化的需求,仍然需要自行编写脚本。
安装
将脚本 dispOptions.sh 和 gmtsph-regional.sh 复制(或软链接)到任意一个位于 $PATH 中的目录,然后重新打开终端即可使用。
Setup 配置
请打开 gmtsph-regional.sh 文件末尾,你会看到类似下面的行:
imgcat $jpgfile #open the output file in terminal, this requires the iTerm.app and imgcat.sh
open $jpgfile #'open' is a command in-build within MacOS
可按你的环境选用其中一种。若使用 Ubuntu,可以用命令 see;其他 Linux 发行版对应的命令需自行确认。思路都是一样的。
用法
gmtsph-regional -i<grid-data> [-r<xmin>/<xmax>/<ymin>/<ymax>] [-u<unit>] [-c<cpt-file>] [-a<x-label>,<y-label>] [-t<x-tick>,<y-tick>] [-v<c-tick>] [-l<size>] [-g] [-G<grad-data>] [-b] [-n] [-p]
选项说明
唯一必须输入的参数是网格文件名,即可快速查看文件面貌。若想细致调整,可使用以下选项:
- -i:输入网格文件名。最好使用
.nc文件,不过 GMT5 也支持 Surfer 的网格格式。注意数据范围不应跨越赤道,否则 GMT5 的-JL投影会触发内部错误。基于这一点,你也可以很方便地修改脚本中grdimage命令的-J选项来改用其他投影。 - -r:输入网格数据的范围,默认使用全部数据范围;使用此选项可强制自定义绘图范围。
- -u:输入数据的单位。特殊情况下,若数据单位为米而想用
km标注色标,可将参数设为km+Uk以开启该功能。 - -c:用于生成数据专属 cpt 文件的输入 cpt 文件。默认使用 GMT 的
grd2cpt命令;若想直接使用输入 cpt 文件,需用 -n 选项禁用grd2cpt。 - -a:用逗号分隔的坐标轴标签。
- -t:手动设置坐标轴标注的间隔。
- -v:手动设置色标标注的间隔。
- -l:从预定义类型
exsmall、small、middle、large中选择页面布局,各类型的具体数值见脚本内部。 - -b:绘制海岸线。
- -g:额外叠加一层地形阴影,使输出图像具有 3D 质感,默认使用输入网格数据。
- -G:用另一个网格文件绘制地形阴影,注意该文件范围应等于或大于数据网格。
- -n:禁用
grd2cpt。 - -p:反转 -c 选项指定的颜色模式;若使用了 -n 选项则此选项无效。
示例
用以下命令绘制 example.nc。输出文件名取自输入网格文件名,脚本会同时输出一张 png(无背景)和一张 eps 文件:
gmtsph-regional -i example.nc
输出效果如下:
