点资料内插法

GIS 系统常常把离散的点资料以内插法创造连续的面资料。自然界中很多东西都是连续的,像是海拔、土壤、温度等等,如果我们想要分析这种面资料,是不可能把整个表面全部测量一次的。实际上的做法会是我们˙在野外只取几个测量点,然后测量点之外的其他地方就靠内插法求得其值。在 QGIS 之中,可以透过内建的 内插工具 附加元件来执行以上所述的事情。

内容说明

我们要使用位于德州的 Arlington 湖的水深测量数据,再根据这些数据制作地形图和等高线图。

你还会学到这些

  • 从点资料计算等高线

  • 套用遮罩于影像图层中的无资料值

  • 为向量图层加上标籤

取得资料

Texas Water Development Board 提供了此湖完整的野外调查的 shapefiles

可以从这里下载 2007-12 survey shapefiles for Lake Arlington

为了方便起见,你也可以直接从以下连结下载:

Shapefiles.zip

资料来源 [TWDB]

操作流程

  1. 打开 QGIS,选择 图层 ‣ 加入图层 ‣ 加入向量图层

../_images/1163.png
  1. 选择 Shapefiles.zip 并按下 确定

../_images/2124.png
  1. 选择要增加的向量图层 视窗中,按住 Shift 键然后选择 Arlington_Soundings_2007_stpl83.shpBoundary2004_550_stpl83.shp 两图层,按下 确定

../_images/366.png
  1. 你会看到 QGIS 中载入了 2 个图层,Boundary2004_550_stpl83 是湖泊的边界,我们先在图层选单列表中把这个图层取消勾选。

../_images/446.png
  1. 如此一来第二个图层 Arlington_Soundings_2007_stpl83 会显现出来。虽然资料看起来像是线,但它其实是一连串很接近的点。

../_images/546.png
  1. 点选 放大 钮,缩放到萤幕中的任一小区域后,就可以看到点了。每个点的座标是差分 GPS 的测量值,其值代表湖泊在特定位置由测深仪测得的深度。

../_images/644.png
  1. 选择 识别图征 工具然后点选任一个点,识别图征结果 的面板会出现在左侧,上面记载此点的属性值。在本例中,ELEVATION 属性就是湖泊在此点的深度,而我们的任务就是要利用这些数值进行内插,求得湖泊的深度谱面以及等高线。

../_images/743.png
  1. 请确认你的 内插附加元件(Interpolation plugin)已启用,详细步骤请参考 使用附加元件。启用后,选择 影像 ‣ 内插工具 ‣ 内插工具

../_images/842.png
  1. 内插工具 视窗中的 输入 区块,向量图层 选择 Arlington_Soundings_2007_stpl83内插属性 选择 ELEVATION,然后按 加入。调整 X座标格子大小Y座标格子大小5,这个数值代表输出网格的每个像素大小。由于本来源资料的投影座标系统是以来当单位,每个像素最终会是 5 呎的方形大小。点选在 输出档案 右侧的 ,把输出档命名为 elevation_tin.tif,最后按下 确定

注解

内插的结果会随着你选择的内插方法和参数而有很大的不同。QGIS 支援两种内插方法,分别为三角内插 (TIN) 以及反距离加权法 (IDW),TIN 法常被使用于高程资料上,而 IDW 法则在内插其他种类的资料时较为常见,例如矿物富集度、人口等等。更多资讯请参考 QGIS 官方文档中的 Spatial Analysis 模组。

../_images/942.png
  1. 看到 elevation_tin 图层载入到 QGIS 后,以右键点选,选择 缩放到图层范围

../_images/1040.png
  1. 如此一来就可以看到刚刚产生的湖泊底面全貌。内插法对于资料收集区以外的地方并不准确,所以接下来我们要依照湖泊的边缘才接我们的湖泊底面。选择 影像 ‣ 取出 ‣ 裁剪

../_images/1164.png
  1. 输出档案 命名为 elevation_tin_clipped.tif裁剪模式 选择 分析遮罩,然后选择 Boundary2004_550_stpl83 作为我们的 分析遮罩,最后按 确定

../_images/1241.png
  1. 新的影像 elevation_tin_clipped 完成后会被载入 QGIS 中。接着我们来调整一下图层的样式,显示各处海拔的不同,注意在 elevation_tin 中的最大与最小高度值。以右键点选 elevation_tin_clipped 图层,进入 属性

../_images/1340.png
  1. 前往 样式 分页,绘图类型 选择 单波段伪彩色,在 产生新的色彩对映表 面板中,选择 Spectral 色阶,由于我们想看到的是湖泊深度图而不是单纯的高度图,因此请把 反转 框勾选起来。如此一来,蓝色会被指派到较深的位置,而水浅的地方会以红色表达。按下 分类

../_images/1438.png
  1. 切换至 透明度 分页,我们要移除掉所有在外框区域、全黑色的像素,所以在 附加无资料值 一栏输入 0,然后按下 确定

../_images/1537.png
  1. 现在我们已经从湖泊的水深数据点,内插出了湖泊的高程(深度)地图,再让我们试试看产生等深线吧。选择 影像 ‣ 取出 ‣ 等高线

../_images/1633.png
  1. 等高线 视窗中的 输出等值线向量档案,输入 contours。我们要产生 5 呎间隔的等高线,因此在 等高线间隔 栏位中输入 5.00。勾选 属性名称 方框,然后按下 确定

../_images/1730.png
  1. 处理完成后,等高线会被载入为 contours 图层。在图层上按右键选择 属性

../_images/1830.png
  1. 前往到 标记设计 分页,勾选 Label with 的方框(译按:或是在下拉式选单中选择 Show labels for this layer),旁边栏位选择 ELEV。在底下的 位置 属性中,选择 曲线。最后按下 确定

../_images/1924.png
  1. 最后,你就会看到标籤数值已沿着各等高线标记上去了。

../_images/2017.png