基于 QGIS 的部分站点气温色斑图制作
QGIS 是一款开源、跨平台的桌面地理信息系统软件,支持众多的数据格式,用户界面良好。对于初步接触 GIS 的同学来说,QGIS 是一个不错的选择。本文简要讲解了气温色斑图的制图流程,旨在引导刚接触 GIS 的同学使用 QGIS 完成常规制图,加深对 QGIS 的理解。制图过程中涉及的部分算法此处没有详细展开,感兴趣的同学可以查阅资料,希望这篇文章可以帮助到大家。
1. 前期准备
1.1. 安装 QGIS 环境
官方下载地址:https://www.qgis.org/en/site/forusers/download.html,推荐 Latest 版本;
1.2. 获取绘制区域的相关图层
目标区域的行政区划、天地图或高德地图等可以直接链接 XYZ Tiles 里面,高德地图 URL:http://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=7,如下图所示;
1.3. 获取站点要素数据
这部分属于业务数据,也可以从互联网上搜索相关参考资料。本次制图从气温要素入手制作基本的色斑图,气温数据存储为 csv 文件;
2. 导入站点数据
- 依次点击【Layer】>【Add Layer】>【Add Delimited Text Layer】>【Add】, 工程下双击新增的图层,当前图层上将显示站点气温数据;
- 双击站点数据图层,在 Symbology 中选择 Graduated ,配以合适的色带来区分不同气温的站点颜色;
3. 对点数据进行插值
在获取站点观测值的基础上,我们将通过插值(Interpolation)方法构建连续的面数据,实现整个目标区域数据的可视化。
在本次 QGIS 制图中,我们选择 IDW Interpolation(反距离加权法插值)。
- 在菜单栏点击【Processing】>【ToolBox】,在右侧面板中双击选择【Interpolation】;
- Vector Layer 选择等值线 contour,按 ELEV 属性进行插值,点击【Input Layer】(红框标记的+),Extent 点击右侧【…】> Calculate from Layer,选择能覆盖所求范围的图层,点击【Add】;插值后效果如下图所示。
插值完成后,右侧 Layer 窗口中新增了插值图层 interpolated,右击该图层在弹出菜单中选择【Zoom to layer】,将图层全部显示在地图窗口。
4. 栅格提取
可以看到在站点数据之外的范围,插值算法很难得到精确的结果。因此需要将整个行政区域图层进行剪裁,插值区域外无数据的像元值设为0。点击菜单栏【Raster】,找到栅格提取【Raster extraction】>按掩膜图层裁剪栅格【Clip raster by mask layer】,效果如下图所示。
5.更改渲染方式
插值后的裁剪图层默认使用单波段灰度【Singleband gray】进行渲染,地图可视化效果较差。点击 Layer 面板左上角 open to layer 按钮,或者双击当前裁剪后图层打开 Layer Properties 窗口,选择单波段伪彩色【Singleband pseudocolor】渲染器。最小值/最大值设置选择 Cumulative count cut,设置在2%-98%之间,避免奇异值为最大值或最小值,有利于改善地图可视化效果。Color ramp 选择【Spectral】,点击色带选择反转颜色渐变【Invert color ramp】。渲染效果如下图所示。
6. 生成气温等值线
根据站点气温数据插值得到的高程地图,可以生成气温等值线。点击【Processing Toolbox】>【Raster extracion】>【Contour】,等值线之间的高程间隔根据自己的需要设置,此处设为5.00000。属性名【Atttribute name】选择 ELEV,用于存储该要素的高程值。
生成等温线后双击该图层,在标签窗口中选择 Single Labels 为等值线添加温度值,Value 选择 ELEV。等温线操作和效果图如下图所示。
到这一步气温色斑图基本就制作好了。有需要的同学可以出图了~
7. 出图
点击【Project】>【Print New Layout】,在左侧工具栏或者菜单栏中的【Add Item】中选择需要添加的内容,例如【Add Map】、【Add Label】、【Add Scale Bar】、【Add Norrow】、【Add North Arrow】等常规要素。具体样式自己设置一下就好了。本次成果如下。
8. 总结
本次基于 QGIS 的气温色斑图制作过程就到这里了,个人感觉难点在于对插值算法的理解,此处运用了常见的 IDW 反距离权重插值方法,有兴趣的同学可以查看更多的插值算法。整个过程参考了很多大神的资料,贴出来供大家参考。以上全部内容仅代表个人观点,水平有限,有不同看法的小伙伴欢迎评论区一起讨论交流~~~
9. 参考资料
- https://blog.csdn.net/wenyiming1991/article/details/48402731?locationNum=5&fps=1
- http://www.360doc.com/content/20/0907/17/67998342_934432939.shtml
- https://blog.csdn.net/sf2gis2/article/details/54864292
10. 附件
气温数据下载链接:https://download.csdn.net/download/v_archer/15729958