✍️ 田冬冬 , 周茂 , 陈箫翰 • 📅 2024-01-17

# inset

官方文档:

  inset

简介:

  管理和设置图中图模式

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

inset 模块包含两个命令：

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

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

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

## inset begin语法

gmt inset begin `-D` inset-box [ `-C`[side]clearance ] [ `-F` box ] [ `-N` ] [ `-R` region ] [ `-J` parameters ] [ `-V`[level] ] [ --PAR=value ]

## 必须选项

-D

-D xmin/xmax/ymin/ymax[+r][+u unit]

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

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

  - +u unit: 与 -R 选项类似，表明此时的坐标为投影后坐标

-D[g|j|J|n|x]refpoint+w width[/height][+j justify][+o dx[/dy]]

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

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

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

    - g lon/lat 指定数据坐标为参考点

    - j code 或者 J code 通过 2 个字母的对齐方式码指定锚点作为参考点

    - n xn/yn 指定归一化坐标系（即 0-1）为参考点

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

  - +j justify 指定小图区域的锚点

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

  - +w width[/height] 指定小图区域的宽度和高度。

## 可选选项

-F

-F[+c clearances][+g fill][+i[[gap/]pen]][+p[pen]][+r[radius]][+s[[dx/dy/][shade]]]

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

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

  - +g fill 指定面板填充颜色 [默认不填充]

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

  - +r[radius] 绘制圆角边框，radius 为圆角的半径

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

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

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

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

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

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

-C

-C clearance

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

  - 一个值，表示四个边的空白相同

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

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

-N

-N

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

-R

-R xmin/xmax/ymin/ymax[+r][+u unit]

  指定数据范围。 (参数详细介绍)

-J

-J projection

  设置地图投影方式。 (参数详细介绍)

-V

-V[level]

  设置 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

    #!/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

## 相关模块

begin, clear, docs, end, figure, subplot