-R 选项
-R 选项用于指定要绘制的数据范围或地图区域。该选项的参数可以用多种方式指定, 同时支持六种不同类型的数据坐标。
-R 选项的多种方式
可以用以下多种方式指定数据范围。
通用方式
-Rxmin/xmax/ymin/ymax
通过给定 X 方向和 Y 方向的最大最小值来指定数据范围。这是最常用的方式,适用于笛卡尔坐标系以及经纬线为直线的地图投影。 例如 -R0/360/-90/90。
-Rxlleft/ylleft/xuright/yuright+r
通过给定矩形区域的左下角坐标 (xlleft, ylleft) 和右上角坐标 (xuright, yuright) 来指定数据范围。 该方式适用于笛卡尔坐标系,以及由于地图投影导致经纬线不是直线的地理区域。使用这种形式可以保证输出的区域是矩形。
-Rgridfile
直接从 2D 网格文件 gridfile 中提取范围信息。 对于某些模块,该方式不仅会从网格中读取范围信息, 还会读入网格间隔和网格配准信息(见 -r 选项)。
-Ra[uto] 或 -Re[xact]
在现代模式下,绘图模块可以根据输入数据自动确定区域。 -Re(默认值)指定确切的数据范围,-Ra 则会稍微向外扩展到合适的增量倍数。
-Ranchorx0/y0/nx/ny
常用于创建网格。由参考点 anchor(见 锚点)、其坐标 x0/y0、点数 nx/ny 以及网格间隔(通常由 -I 指定)共同决定范围。
地理/地图专用方式
-Rg 或 -Rd
指定全球范围。-Rg 表示 0/360/-90/90,-Rd 表示 -180/180/-90/90。
-Rxmin/xmax/ymin/ymax\ +uunit
在投影后的单位(如 UTM 米)下指定区域。xmin/xmax/ymin/ymax 为投影坐标, unit 为距离单位(见 单位)。GMT 会根据 -J 选项 设定的投影方式反算出地理范围。 对于中心为 (0,0) 的区域,可简写为 -Rhalfwidth[/halfheight]+uunit。
-Rcode1,code2,…[+e|r|R[incs]]
通过国家或地区代码(如
CN、US.TX)间接指定区域,详情见 DCW: 世界数字图表 一节。 可用 +e|r|R 修饰符对范围进行扩展或取整。
-R 选项指定数据范围。
(左) 指定每个维度的极值;(右) 指定左下角和右上角的坐标。
支持六种坐标
GMT 支持绘制多种类型的坐标轴,如地理坐标轴(即经纬度轴)、时间轴(绝对时间轴和相对时间轴) 以及笛卡尔轴等,具体请参考 -B 选项。不同的坐标轴需要的数据类型也不同,主要分为以下四大类:
以上四种数据类型都可以用在 -R 选项中,用来指定数据范围。 数据类型中已经详细介绍过这四种数据类型,本节不再赘述, 但会简要介绍 -R 选项中指定地理坐标数据范围的一些特殊方式。
除了以上四种方式,-R 选项还支持使用以下两种方式来指定数据范围:
投影后坐标
弧度坐标
地理坐标
对于常用的地图范围,GMT 提供了两个简化写法:
-Rg 等效于 -R0/360/-90/90
-Rd 等效于 -R-180/180/-90/90
GMT 对于地理投影和线性投影的默认设置有很大区别。有些时候数据是地理坐标, 但是因为某些原因不能选择地理投影,只能选择线性投影(-JX 或 -Jx), 此时可以通过如下几种方式表明当前数据是地理坐标下的数据,而不是简单的笛卡尔坐标:
使用 -Rg 而不是 0/360/-90/90
使用 -Rd 而不是 -180/180/-90/90
使用 -Rgxmin/xmax/ymin/ymax 表明是某个有限范围的地理区域
在范围后加后缀 W|E|S|N 或更通用的 D|G,如 -R0/360G/-90/90N
使用 -fg 选项表明输入数据是地理坐标,见 -f 选项
备注
推荐使用 -fg 这种方式来指定输入数据的类型。
投影后坐标
地理坐标可以通过选择投影方式投影成笛卡尔坐标,通过在区域范围后加上 +uunit 来表明这是一个经过投影的地理坐标。
例如 -R-200/200/-300/300+uk 表示位于投影中心 (0,0) 处的一个 400km x 600km 的矩形区域,也可简写为 -R200/300+uk。 这些坐标在GMT内部会被转换成区域左下角和右上角的地理坐标。 当你想要用投影单位指定区域时用这种方式会比较方便(例如UTM meters)。
弧度坐标
对于以弧度为单位的数据而言,通常会需要指定数据范围是 \(\pi\) 的倍数或分数, 此时可以使用 [+|-][s]pi[f] 形式, 其中 s 和 f 可以是任意整数或浮点数, s 表示 scale 即倍数,f 表示 fraction 即分数。
例如 -2pi/2pi3/0/1 表示X轴的数据范围是 \(-2\pi\) 到 \(2/3\pi\), 即相当于-360度到120度。
当使用这种形式时,程序只在 \(\pi\) 相关的值处进行标注,即 n 倍的 \(\pi\), \(1.5\pi\) 以及 3/4,2/3,1/2,1/3,1/4倍的 \(\pi\)。