QGIS 3.10 插值与等值线提取

在这里插入图片描述
插值(Interpolation)通过离散的点状数据生成连续的面状数据,是常用的GIS分析技术。现实世界中的很多现象是连续的,比如高程、土壤、温度等,很难通过对整个表面进行测量的方式完成对这些连续现象的建模。通常是沿着表面的不同点位进行测量得到离散的测量值,中间值则是通过 “插值”的过程推断得出。

QGIS 3.10包含两种插值工具:不规则三角网插值(TINInterpolation)反距离加权法插值(IDWInterpolation)

任务概述

通过对德克萨斯州阿灵顿湖(Lake Arlington)进行实地深度测量,并根据测量结果绘制高程地形图和等值线(contours )

将会学到的其他技巧

  • 用点数据绘制等值线。
  • 掩膜(mask)栅格图层的无数据值像元。
  • 为矢量图层添加标签专题图。

获取示范数据

本教程采用的示范数据为克萨斯州水利发展部(Texas Water Development Board )的shape格式湖泊调查数据,下载链接如下:

http://www.qgistutorials.com/downloads/Shapefiles.zip

将QGIS界面设置为中文

制作地图之前,请将您的QGIS软件界面设置为简体中文(如果您已经设置过了,可以忽略本节后续内容)。操作方式为:通过菜单【Settings】->【Options…】打开对话框,选择其中的【General】标签,找到“Override system locale”前面的复选框并打勾,在“User Interface Transaction”下拉框中找到并选择“简体中文”,单击【OK】,退出QGIS。重新启动QGIS后即可看到简体中文界面。
在这里插入图片描述

详细操作步骤

  1. 打开QGIS,点击菜单【图层】->【添加图层】->【添加矢量图层…】。

在这里插入图片描述

  1. 在【数据源管理器|矢量】对话框中,【源类型】选中“文件”单选框,点击【矢量数据集】右侧的【…】按钮,浏览到下载的压缩文件。点击【添加】按钮。
    在这里插入图片描述

  2. 在弹出的【请选择要添加的矢量图层…】对话框中,按住键盘上的Shift键,选中Arlington_Soundings_2007_stpl83.shpBoundary2004_550_stpl83.shp,点击【OK】按钮。
    在这里插入图片描述

  3. 选中的两个图层加载到了QGIS地图窗口中,Boundary2004_550_stpl83是湖泊界线面图层,在【图层】面板中取消选中该图层前面的复选框,使其不显示在地图窗口中。
    在这里插入图片描述

  4. 湖泊界线图层关闭后,Arlington_Soundings_2007_stpl83图层显示了出来。这个图层看起来像是线数据,实际上是由一系列非常密集的点数据构成。
    在这里插入图片描述

  5. 点击【地图浏览】工具栏的【放大】按钮,将图层放大即可看到点状数据。每个点代表由差分GPS设备记录的该位置上测深仪(Depth Sounder)测得的湖泊深度数据。
    在这里插入图片描述

  6. 按下【属性】工具栏上的【识别要素】按钮,点击地图上任意的点,该点的属性信息出现在地图右侧的【识别结果】面板中。其中,“ELEVATION”属性表示湖泊该位置的深度,它将作为插值计算的输入参数,用于创建湖泊的深度地形图和等值线图。
    在这里插入图片描述

  7. 本教程采用不规则三角网插值算法对点数据进行插值。点击菜单【处理】->【工具箱】。
    在这里插入图片描述

  8. 在【处理工具箱】面板中找到【插值】->【不规则三角网插值】工具,双击运行。
    在这里插入图片描述

  9. 在弹出的【不规则三角网插值】对话框中,【输入图层】面板的【矢量图层】下拉框选择“Arlington_Soundings_2007_stpl83”,【插值属性】选择“ELEVATION”字段。点击【+】按钮,将上述选择结果添加到表格中。【插值方法】保持默认的“线性”。点击【范围(xmin,xmax,ymin,ymax)】右侧的【…】,在弹出菜单选择【使用图层范围】,当前图层的左上角点和右下角点坐标将自动填充到文本框中。【输出栅格大小】面板中,设置【横坐标像素大小】和【纵坐标像素大小】为5,表示输出数据中每个像元的大小代表实际距离5英尺。点击【插值】右侧的【…】按钮,将输出文件命名为:“elevation_tin.tif”。点击【运行】按钮开始插值计算。
    在这里插入图片描述
    备注:根据插值方法和设置参数的不同,插值得到的结果可能大相径庭。QGIS支持不规则三角网(Triagulated Irregular Network (TIN))反距离加权法(Inverse Distance Weighting (IDW))两种插值方法。TIN方法常用于高程数据插值计算,IDW方法则常用于其他数据插值计算中,如矿物浓度、人口密度等。

  10. 计算完成后,QGIS地图窗口中添加了插值得到的图层:“elevation_tin”,右键点击该图层,在弹出菜单中选择【缩放到图层范围】,将该图层全图显示在地图窗口中。
    在这里插入图片描述

  11. 在点数据测量区域以外,插值算法很难得到准确的计算结果。本教程示范数据是湖泊深度测量点数据,可以明显看到,湖泊范围以外区域的插值数据出现了异常。因此,需要按照湖泊界线将该图层进行裁剪。点击菜单【处理】->【工具箱】,调出【处理工具箱】面板,在该面板中找到【栅格提取】->【按掩膜图层裁剪栅格】工具,双击运行。
    在这里插入图片描述

  12. 在【按掩膜图层裁剪栅格】对话框中,【输入图层】下拉框选择“elevation_tin”,【掩膜图层】选择“Boundary2004_550_stpl83”,【为输出波段指派的无数据值】文本框中输入0.000000,该设置将栅格图层中无数据值的像元指定为0。点击【已裁剪(掩膜)】右侧的【…】,将输出结果文件命名为:“elevation_tin_clipped.tif”。点击【运行】按钮。
    在这里插入图片描述

  13. 回到QGIS,地图窗口中添加了裁剪结果图层:“elevation_tin_clipped”,默认用“单波段灰度”进行渲染,地图的可视化效果较差。为了达到更好的可视化效果,可以为该图层设置样式来表达不同的高程。请留意“elevation_tin”图层的最小/最大高程值,它们将影响样式设置的【最小/最大值设置】选项。点击【图层】面板上方的【打开图层样式面板】按钮。
    在这里插入图片描述

  14. 在【图层样式】面板中,选择“单波段伪彩色”渲染器。展开“最小/最大值设置”,选择【Cumulative count cut】选项,将标准数据范围设置成数据原始取值的2%-98%,这意味着奇异值(outlier)将不会被设置成最小值或最大值,有利于改善地图的可视化效果。【颜色渐变】下拉框中选择“Spectral ”,再次点击该下拉框,选择“反转颜色渐变”,使得蓝色代表湖泊较深区域,红色表示湖泊较浅区域。
    在这里插入图片描述

  15. 地图窗口得到一幅由湖泊深度点数据插值生成的高程地图,利用该地图可以生成等值线。点击菜单【栅格】->【提取】->【等值线…】。
    在这里插入图片描述

  16. 在弹出的【等值线】对话框中,【输入图层】选择“elevation_tin_clipped”。【等值线之间的间隔】文本框输入5.00000,此处默认采用地图单位,即生成的等值线之间高程间隔为5英尺。【属性名】文本框输入“ELEV”,用于存储该要素的高程值。点击【等值线】右侧的【…】按钮,输出文件名称设置为“contours.shp ”。点击【运行】按钮开始提取等值线。
    在这里插入图片描述

  17. 等值线提取结束后,生成的线图层“contours”添加到了地图窗口中。右键点击该图层,从弹出菜单选择【属性…】,为等值线添加数值标签。
    在这里插入图片描述

  18. 在【图层属性】对话框中,切换到【标签】页,选择“单一标签”,【Value】下拉框选择“ELEV”字段,找到下方【位置】标签,选中“弯曲”单选按钮,点击【OK】。
    在这里插入图片描述

  19. 回到QGIS地图窗口,可以见到,沿着每条等值线增加了一个表示该等值线高程的文本标签。至此,通过湖泊测量点绘制高程地图和提取等值线就完成了。
    在这里插入图片描述

本教程到此结束。

吴建玲

2020年6月18日


版权声明

本文欢迎转载,转载时请注明出处。

本文主要翻译并改编自qgistutorials网站,原文链接为https://www.qgistutorials.com/en/docs/interpolating_point_data.html,原文已根据《知识共享署名4.0国际许可协议(Creative Commons Attribution 4.0 International License)》获得许可,在此向原文作者乌加尔·甘地(Ujaval Gandhi)致以敬意,感谢他为分享QGIS技术做出的贡献。
在这里插入图片描述

  • 3
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值