GMT6入门教程(4)添加图例和文字

1.添加图例(legend)

原文地址:添加图例 — GMT中文手册

模块:legend

1.1自动图例

在使用 plot 模块绘制线条或符号时,可以额外加上 -llabel 选项以指定当前线段或符号的图例标签。

可以为 -l 选项加上其它子选项以控制图例的位置、大小以及其它显示效果

1.2设置图例属性

调用了 legend 选项,并设置了 -D 和 -F 选项,-DjBR+o0.1c/0.1c -F+p1p+glightblue。

  • jBR 表示将图例放在底图的右下角(BottomRight)
  • +o0.1c/0.1c 表示将图例在右下角的基础上再加上额外的偏移量
  • -F+p1p+glightblue 则设置了图例框的轮廓和填充色

1.3手动设置图例

针对绘制符号和线条,legend 的输入格式为:

S dx1 symbol size fill pen dx2 text

  • S 表明这一行用于绘制符号或线段。
  • dx1 是符号或线段与图例左边框的距离
  • symbol 是要绘制的符号类型代码;若想要绘制线段,则设置 symbol 为 -
  • size 符号尺寸或线段长度
  • fill 符号填充色;若不需要填充色,则可设置为 -
  • pen 符号轮廓的画笔颜色;若不需要绘制符号轮廓,则可设置为 -
  • text 符号对应的文字说明
  • dx2 文字与左边框之间的距离

例子:

# symbols
S 0.25c c 0.3c -      0.25p,blue 0.8c circle
S 0.25c t 0.3c cyan   0.25p      0.8c triangle
S 0.25c i 0.3c blue   0.25p,red  0.8c triangle2
S 0.25c e 0.3c yellow 0.25p      0.8c ellipse

# lines
S 0.25c - 0.5c - 0.25p 0.8c line
S 0.25c - 0.5c - 0.25p,- 0.8c dashline
S 0.25c v0.1i+a40+e 0.25i magenta 0.25p 0.8c vector
S 0.25c f0.1i+l+t 0.25i blue 0.25p 0.8c fault

2.添加文字

原文地址:添加文字 — GMT中文手册

模块:text

2.1最简单的示例

若需要添加文字,则输入数据中必须给出文字的X和Y坐标以及具体的文字。因而,输入数据有三列:

X Y text

2.2文字属性

-F 选项来实现文字属性:

  • -F+ffont 可以设置文字的属性,包括文字大小、字体和颜色,三者之间用逗号分隔。
  • -F+a 则可以设置文字的旋转角度。

-F+f16p,1,red+a30 即表示文字大小为16p,字体为1号字体,颜色为红色,文字旋转角度为30度。

gmt text -L 查看GMT支持的字体名及其对应的字体编号。

2.3文本框

加上文本框:

  • -W 选项控制文本框的画笔属性
  • -G 选项控制文本框的填充色
  • -C 选项控制文字与文本框之间的空白

-W1p -Glightblue -C25%/25%

2.4对齐方式

GMT中文本的默认对齐方式为居中对齐,即将整个文本的中心放在指定的X和Y坐标处。

文本的对齐方式由水平对齐方式和垂直对齐方式共同决定。

水平对齐方式有三种:

  • 左对齐(Left)
  • 居中对齐(Center)
  • 右对齐(Right)。

垂直对齐方式有三种:

  • 顶部对齐(Top)
  • 居中对齐(Middle)
  • 底部对齐(Bottom)。

三种水平对齐方式和三种垂直对齐方式,构成了文本的9种对齐方式。

-F+j 用于指定文本对齐方式。比如,-F+jTL 表示文本对齐方式为 TL(Top + Left),即表示以左上角方式对齐。

2.5文本偏移量

使用 -D 选项还可以对文本设置额外的偏移量。例如, -D0.5c/0.5c 分别设置了文本在X方向和Y方向的偏移量。

2.6变化的文字属性

如果想要不同的文字有不同的文本属性,可以多次调用 text 模块,每次设置不同的文本属性。当然,还有更加灵活的办法,可以一个命令中实现变化的文字属性。

使用了 -F+f+a+j 选项。上面已经介绍到,+f 设置文本属性, +a 设置文本旋转角度,+j 设置文本对齐方式。

输入数据的格式由 +f、+a和 +j 的顺序决定,因而此时输入数据的格式为:

X Y font angle justification text

第三列为字体属性,第四列为文本旋转角度,第五列为文本对齐方式。