---
author: 田冬冬
date: 2024-09-04
---

# GMT 图中图模式

在绘制区域地图时，为了更清晰地显示研究区域的地理位置，通常会额外绘制一个更大
区域范围的地图，并在大区域地图中标记出研究区域的位置。这种图称之为 inset map。
中文没有统一的翻译，大家一般称之为图中图、小图、插页图或区位图。

GMT 中 {doc}`/module/inset` 模块用于管理图中图模式。图中图模式以 **inset begin**
开始，并以 **inset end** 结束。

使用 **inset begin** 进入图中图模式，其作用是在纸张上规划出一个矩形区域，
并将绘图原点移动到该矩形区域的左下角。接下来的所有绘图命令均只在该区域内
进行操作。当使用 **inset end** 结束图中图模式时，绘图原点会自动恢复到图中图
模式之前的位置，且所有设置参数都将回到之前的状态。

## 用矩形框标记研究区域

下面的示例中研究区域为日本东京周围的一个小区域。为了展示其地理位置，我们在大图的
左下角的小图中绘制了日本全图，同时在小图中用矩形框出了大图中的研究区域范围。

**inset begin** 定义了小图的位置位于大图左下角（**-DjBL**），小图区域的宽度
为 3 厘米，高度为 3.6 厘米（**+w3c/3.6c**），并且相对大图左下角偏移 0.1 厘米（**+o0.1c**）。
同时还设置了小图区域的背景色为白色（**+gwhite**），并绘制了小图区域的边框（**+p1p**）。

在小图区域内，我们使用 **coast** 模块绘制了日本全图，小图投影参数为 **-JM?**，
其中 **?** 表示根据 **inset begin** 中 **-D** 选项指定的宽度自动决定小图宽度。
同时我们使用 **plot** 模块的 **-Sr+s** 选项在小图中绘制了一个对应于大图区域的
矩形框，该命令需要输入矩形区域的两个对角顶点的经纬度。

```{eval-rst}
.. gmtplot:: /module/inset/inset-ex01.sh
    :width: 60%
```

## 用颜色标记研究区域

下面的示例中研究区域为澳大利亚。为了展示其地理位置，我们在大图的右上角区域绘制了
全球地图，并用特殊的颜色将澳大利亚区域标记出来。

**inset begin** 定义了小图的位置位于大图右上角（**-DjTR**），小图区域宽度为
1.5 英寸（**+w1.5i**）。同样的，在小图内部我们在需要指定地图宽度的地方使用了
**?** 让 GMT 自动帮我们决定小图的宽度。

```{eval-rst}
.. gmtplot:: /module/inset/inset-ex02.sh
    :width: 60%
```
