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 的 text 模块可以用于添加文字。
最简单的示例
若需要添加文字,则输入数据中必须给出文字的 X 和 Y 坐标以及具体的文字。因而,输入数据有三列:
X Y text
下面的示例首先用 basemap 模块绘制了一张底图,然后使用 text 模块在底图的不同位置添加了文字。
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text << EOF 5 1 GMT TEXT1 5 3 GMT TEXT2 5 5 GMT TEXT3 EOF gmt end show
文字属性
当然,我们可以为文字设置更丰富的属性,比如文字大小、字体、文字颜色以及文字旋转角度等。这可以通过 -F 选项来实现。
-F+ffont 可以设置文字的属性,包括文字大小、字体和颜色,三者之间用逗号分隔。 -F+a 则可以设置文字的旋转角度。
备注
GMT 默认支持 35 种字体,可以使用 gmt text -L
查看 GMT 支持的字体名及其对应的字体编号。
下面的示例中,-F+f16p,1,red+a30 即表示文字大小为 16p,字体为 1 号字体,颜色为红色,文字旋转角度为 30 度。
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text -F+f16p,1,red+a30 << EOF 5 1 GMT TEXT1 5 3 GMT TEXT2 5 5 GMT TEXT3 EOF gmt end show
文本框
对于每个文本字符串,我们还可以为其加上文本框。
-W 选项控制文本框的画笔属性
-G 选项控制文本框的填充色
-C 选项控制文字与文本框之间的空白
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text -F+f16p,1,red+a30 -W1p -Glightblue -C25%/25% << EOF 5 1 GMT TEXT1 5 3 GMT TEXT2 5 5 GMT TEXT3 EOF gmt end show
对齐方式
对于任意一个文本,我们还可以设置其对齐方式与偏移量。GMT 中文本的默认对齐方式为居中对齐,即将整个文本的中心放在指定的 X 和 Y 坐标处。当然,用户也可以自行指定文本的对齐方式。
文本的对齐方式由水平对齐方式和垂直对齐方式共同决定。水平对齐方式有三种:左对齐(Left)、居中对齐(Center)和右对齐(Right)。垂直对齐方式有三种:顶部对齐(Top)、居中对齐(Middle)和底部对齐(Bottom)。三种水平对齐方式和三种垂直对齐方式,构成了文本的 9 种对齐方式。
-F+j 用于指定文本对齐方式。下面的示例中,-F+jTL 表示文本对齐方式为 TL(Top + Left),即表示以左上角方式对齐。从下图中可以看到,三个文本框的左上角被放在了 (5,1)、(5,3) 和 (5,5) 处。
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text -F+f16p,1,red+jTL -W1p << EOF 5 1 GMT TEXT1 5 3 GMT TEXT2 5 5 GMT TEXT3 EOF gmt end show
文本偏移量
使用 -D 选项还可以对文本设置额外的偏移量。下面的示例中, -D0.5c/0.5c 分别设置了文本在 X 方向和 Y 方向的偏移量。
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text -F+f16p,1,red+jTL -D0.5c/0.5c -W1p << EOF 5 1 GMT TEXT1 5 3 GMT TEXT2 5 5 GMT TEXT3 EOF gmt end show
变化的文字属性
如果想要不同的文字有不同的文本属性,可以多次调用 text 模块,每次设置不同的文本属性。当然,还有更加灵活的办法,可以一个命令中实现变化的文字属性。
下面的例子中,使用了 -F+f+a+j 选项。上面已经介绍到,+f 设置文本属性, +a 设置文本旋转角度,+j 设置文本对齐方式。但我们并没有指定具体的属性值,因而需要在输入数据中增加额外的数据列。输入数据的格式由 +f、+a和 +j 的顺序决定,因而此时输入数据的格式为:
X Y font angle justification text
下面的示例中,第三列为字体属性,第四列为文本旋转角度,第五列为文本对齐方式。
gmt begin map gmt basemap -R0/10/0/6 -JX10c/6c -Bafg1 -BWSen gmt text -F+f+a+j -W1p -Glightblue << EOF 5 1 12p,0,red 0 TL GMT TEXT1 5 3 15p,1,blue 30 MC GMT TEXT2 5 5 18p,2,yellow 180 TL GMT TEXT3 EOF gmt end show
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论