返回介绍

GMT 入门

GMT 实例

GMT 进阶

附录

其他

legend

发布于 2023-08-10 21:46:57 字数 6224 浏览 0 评论 0 收藏 0

官方文档

legend

简介

在图上添加图例

legend 模块用于绘制图例,图例由图例文件控制。如无特别说明,标注的字体由 FONT_ANNOT_PRIMARY 控制。若图例中含有中文,必须将 FONT_ANNOT_PRIMARY 设置为中文字体。

语法

gmt legend [ specfile ]

-D[g|j|J|n|x]refpoint+wwidth[/height][+jjustify][+lspacing][+odx[/dy]]

指定图例框的尺寸和位置

简单介绍各子选项的含义,详情见 修饰物

  • g|j|J|n|x]refpoint指定地图上的参考点

    • glon/lat 指定数据坐标为参考点

    • jcode 或者 Jcode 通过 2 个字母的对齐方式码指定锚点作为参考点

    • nxn/yn 指定归一化坐标系(即 0-1)为参考点

    • xx/y 指定绘图坐标 为参考点,追加 cm, inch, 或者 point 用来指定单位

  • +jjustify 指定图例框的锚点(默认锚点在左下角(BL))

  • +odx/dy 在参考点的基础上设置图例框的额外偏移量

  • +wwidth[/height] 指定图例框的尺寸。若 height 为0或未指定,则根据图例内容自动估算图例框高度。

  • +lspacing 设置图例里的行间距 [默认值1.1,即当前字体大小的1.1倍]

该选项几个比较有用的用法是:

  • 将图例放在左下角: -DjBL+w4c+o0.2c/0.2c

  • 将图例放在左上角: -DjTL+w4c+o0.2c/0.2c

  • 将图例放在右下角: -DjBR+w4c+o0.2c/0.2c

  • 将图例放在右上角: -DjTR+w4c+o0.2c/0.2c

可选选项

-Bparameters (more …)

设置底图边框和轴属性

-Cdx/dy

设置图例边框与内部图例之间的空白 [默认值 4p/4p]

-F[+cclearances][+gfill][+i[[gap/]pen]][+p[pen]][+r[radius]][+s[[dx/dy/][shade]]]

控制图例的背景面板属性

若只使用

图例文件用于控制图例中各项的布局。图例文件中的每个记录对应图例中的一项,图例中每项的顺序由记录的先后顺序决定。每个记录的第一个字符决定了当前记录的图例类型。GMT中共有14种图例类型,列举如下:

# comment

以 # 开头的行或空行是注释行,会被跳过

A cptname

指定CPT文件,使得某些记录可以通过指定Z值来设定颜色,可以多次使用该记录以指定不同的CPT文件

B cptname offset height [ optional arguments ]

绘制水平colorbar

  • offset 是colorbar相对于图例框左边界的距离

  • height 是colorbar高度,其后可以加上子选项 [+e[b|f][length]][+h][+m[a|c|l|u]][+n[txt]]

  • optional argumentscolorbar 模块的其它选项,如

    对于如下符号,若用户不显式指定属性,绘制图例时使用如下默认值:

    • front符号 f:front 符号位于左侧,其大小为指定符号大小的30%

    • 矢量符号 v:箭头大小为符号大小的30%

    • 椭圆符号 e|E:主轴长度为符号大小,次轴长度是符号大小的65%,方位角为0

    • 矩形符号 r:宽度为符号大小,高度为宽度的65%

    • 旋转矩形符号 j|J:宽度为符号大小,高度为宽度的65%,旋转角度为30度

    • 圆角矩形符号 R:宽度为符号大小,高度为宽度的65%,角半径为宽度的10%

    • 数学圆弧符号 m|M:角度在-10°-45°,箭头大小为符号大小的30%

    • 楔形符号 w:角度为-30°到30°

    示例

    #!/usr/bin/env bash
    
    gmt begin legend
    gmt makecpt -Cpanoply -T-8/8/1 -H > tt.cpt
    gmt set FONT_ANNOT_PRIMARY 12p
    gmt legend -R0/10/0/10 -JM6i -Dx0.5i/0.5i+w5i+jBL+l1.2 -C0.1i/0.1i -F+p+gazure1+r -B5f1 << EOF
    # Legend test for gmt pslegend
    # G is vertical gap, V is vertical line, N sets # of columns, D draws horizontal line,
    # H is ps=legend.ps
    #
    G -0.1i
    H 24p,Times-Roman My Map Legend
    D 0.2i 1p
    N 2
    V 0 1p
    S 0.1i c 0.15i p300/12 0.25p 0.3i This circle is hachured
    S 0.1i e 0.15i yellow 0.25p 0.3i This ellipse is yellow
    S 0.1i w 0.15i green 0.25p 0.3i This wedge is green
    S 0.1i f 0.25i blue 0.25p 0.3i This is a fault
    S 0.1i - 0.15i - 0.25p,- 0.3i A contour
    S 0.1i v 0.25i magenta 0.5p 0.3i This is a vector
    S 0.1i i 0.15i cyan 0.25p 0.3i This triangle is boring
    D 0.2i 1p
    V 0 1p
    N 1
    M 5 5 600+u+f
    G 0.05i
    I @SOEST_block4.png 3i CT
    G 0.05i
    B tt.cpt 0.2i 0.2i -B0
    G 0.05i
    L 9p,Times-Roman R Smith et al., @%5%J. Geophys. Res., 99@%%, 2000
    G 0.1i
    T Let us just try some simple text that can go on a few lines.
    T There is no easy way to predetermine how many lines may be required
    T so we may have to adjust the height to get the right size box.
    EOF
    rm -f tt.cpt
    gmt end show
    
    http://www.wenjiangs.com/wp-content/uploads/2023/docimg24/171-nkdsvjwjagv.png

    legend示例图1

    gmtlogo, basemap, text, plot

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文