inset

官方文档:

inset

简介:

管理和设置图中图模式

inset 模块用于管理图中图模式。即在纸张上规划出一小片区域,并限制接下来的绘制操作均只在该小区域内操作。

inset 模块包含两个命令:

  • inset begin 用于设置图中图模式,其定义了图中图区域的位置和大小

  • inset end 用于结束图中图模式,所有的操作都会回到原大图中。

在图中图中,用户可以使用任意的投影方式和投影区域。若投影方式中底图宽度或比例用 ? 表示,则会根据 -D 选项设置的小图尺寸自动确定小图的投影参数。

inset begin语法

gmt inset begin -Dinset-box [ -C[side]clearance ] [ -Fbox ] [ -N ] [ -Rregion ] [ -Jparameters ] [ -V[level] ] [ --PAR=value ]

必须选项

-Dxmin/xmax/ymin/ymax[+r][+uunit]

类似于 -R 选项,通过指定大图中的一个矩形区域作为小图的绘图区域。

  • +r: 与 -R 选项类似,表明坐标为矩形区域的左下角和右上角坐标。

  • +uunit: 与 -R 选项类似,表明此时的坐标为投影后坐标

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

指定小图区域的尺寸和位置

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

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

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

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

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

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

  • +jjustify 指定小图区域的锚点

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

  • +wwidth[/height] 指定小图区域的宽度和高度。

可选选项

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

设置小图区域的背景面板属性。

若只使用 -F 而不使用其它子选项,则会在小图周围绘制矩形边框。下面简单介绍各子选项,详细用法见 修饰物

  • +gfill 指定面板填充颜色 [默认不填充]

  • +ppen 绘制面板边框。pen 为边框的画笔属性,若不指定 pen,则默认使用 MAP_DEFAULT_PEN

  • +r[radius] 绘制圆角边框,radius 为圆角的半径

  • +i[[gap/]pen] 在边框内部绘制一个内边框,gap 为内外边框空白距离 [默认为 2p], pen 为内边框的画笔属性 [默认使用 MAP_DEFAULT_PEN]

  • +cclearance 设置修饰物与面板之间的空白距离。默认情况下面板的大小由修饰物的大小决定,使用该子选项可以为面板增加额外的尺寸。 clearance 的具体设置包括下面 3 种情况:

    • gap 为四个方向增加相同的空白距离

    • xgap/ygap 分别为 X 方向和 Y 方向指定不同的空白距离

    • lgap/rgap/bgap/tgap 分别为四个方向指定不同的空白距离

  • +s[[dx/dy/][shade]] 设置面板背景阴影。dx/dy 为阴影区相对于面板的偏移量, shade 为阴影区颜色 [默认为 4p/-4p/gray50]

-Cclearance

小图区域内部的额外空白区域 [默认值没有空白]。其可以取三种形式:

  • 一个值,表示四个边的空白相同

  • 两个用斜杠分隔的值,分别设置水平和垂直方向的空白

  • 四个用斜杠分隔的值,分别设置左右下上四条边的空白

-N

不裁剪超过小图区域边界的部分。

-Rxmin/xmax/ymin/ymax[+r][+uunit] (more …)

指定数据范围

-Jprojection (more …)

设置地图投影方式

-V[level] (more …)

设置 verbose 等级 [w]

-^-

显示简短的帮助信息,包括模块简介和基本语法信息(Windows下只能使用 -

-++

显示帮助信息,包括模块简介、基本语法以及模块特有选项的说明

-? 或无参数

显示完整的帮助信息,包括模块简介、基本语法以及所有选项的说明

示例

#!/usr/bin/env bash
gmt begin inset-map
    gmt coast -R139.2/140.5/34.8/36 -JM12c -Baf -BWSne -W2p -A1000 -Glightbrown -Sazure1 --FORMAT_GEO_MAP=dddF
    gmt inset begin -DjBL+w3c/3.6c+o0.1c -F+gwhite+p1p
        gmt coast -R129/146/30/46 -JM? -EJP+glightbrown+p0.2p -A10000
        # Plot a rectangle region using -Sr+s
        echo 139.2 34.8 140.5 36 | gmt plot -Sr+s -W1p,blue
    gmt inset end
gmt end show
../../_images/642184e44010ce202205132f9d854923.png
#!/usr/bin/env bash
gmt begin inset-example
    gmt coast -R110E/170E/44S/9S -JM6i -B -BWSne -Wfaint -N2/1p -Gbrown -EAU+gbisque
    gmt inset begin -DjTR+w1.5i+o0.15i/0.1i -F+gwhite+p1p+c0.1c
        gmt coast -JG120/30S/? -Rg -Bg -Wfaint -Gbrown -EAU+gbisque -A5000
    gmt inset end
gmt end show
../../_images/6156f2d3590787a93ff345a57c914ba7.png

相关模块

begin, clear, docs, end, figure, subplot