QGIS基本功| 8 初识数据源

初次接触GIS的朋友,常常弄不清数据源(Data Source)图层(Layer)的区别与联系,导致在数据处理和分发时出现一些问题,例如:辛辛苦苦做出了一幅漂亮的地图,为什么再次打开数据时,地图又变回丑陋的样子?怎么才能把工作成果分发给同事,让他打开数据时效果跟我本机一模一样?

回答这些问题,我们需要从数据源的基本概念说起。

本文从数据源和图层的区别与联系、打开数据源管理器、数据源管理器界面介绍和QGIS支持打开的数据源类型等方面,整体上初步介绍数据源相关知识。后续将陆续推出文章,详细介绍不同数据源的创建、打开、管理等内容。

 01 数据源与图层

数据源(Data Source)顾名思义指的是数据的来源,是数据的物理存储方式,具体表现为硬盘上的一个个数据文件或者数据库中一张张表。QGIS中的数据源主要指的是各种不同类型地理空间数据的文件、数据库或网络数据服务。同时,QGIS也兼具处理非空间数据即纯属性数据的能力。

图层(Layer)不保存数据本身,通常用于定义空间数据在地图窗口中的显示方式,是地理空间数据的可视化表达。图层通过与具体的数据源关联,采用符号和标签等制图元素将数据绘制在地图中。

多个图层叠加得到内容丰富的地图

图片来源:https://blog.csdn.net/dsac1/article/details/78027574

通俗来说,数据源是存储在计算机硬盘上的一个个文件,图层是数据的表达方式,是QGIS为了图形漂亮而给数据设置地图符号、颜色、线型、填充等。打开数据文件,设置美观的样式将数据显示在地图窗口中,就叫做地图

在QGIS中,数据源一般显示在【浏览】面板中,【图层】面板列出了当前地图窗口所绘制的图层。

同一份数据可以用不同的样式绘制在地图窗口中。在【图层】面板中,右键点击图层,点击【创建图层副本】,即可为同一数据创建不同图层副本。

当图层复制完成时,地图窗口的上方将提示该副本使用了同一数据源:

分别设置两个图层的样式,可以看到到相同数据源的两个图层叠加的效果。这是一个常用的作图技巧,通常用来突出显示研究区域边界。

 02 打开数据源

在QGIS中,打开数据源有以下方式:

  • 点击菜单【图层】->【添加图层】,根据数据源类型选择对应的子菜单:

  • 根据数据源类型,点击【图层管理】工具栏上对应的按钮:

  • 点击【数据源管理】工具栏上的【打开数据源管理器】按钮,然后切换到对应的标签页:

实际上,以上方式均打开了同一个界面:【数据源管理器】对话框。

 03 数据源管理器界面介绍

【数据源管理器】是QGIS默认的加载数据工具,它以风格一致的方式提供了打开矢量数据、栅格数据、网孔数据、数据库数据和网络数据的操作界面。

【数据源管理器】界面分为两部分:左边是数据源类型标签页,右边是对应数据源类型的参数设置区域。

点击左侧的数据源类型,即可切换到对应的标签页,右边区域显示不同的设置选项,完成设置后点击下方的【添加】按钮即可将对应的数据添加到【图层】面板,具有几何图形的数据将同时在地图窗口显示空间图形。

  • 浏览标签页

【数据源管理器】左侧最上方是【浏览】标签页。实际上该标签页是将主界面的【浏览】面板内嵌到【数据源管理器】中,两者的功能与操作方式完全相同:点击展开各个节点,可以查看图层文件、工程文件、Python脚本、模型文件等QGIS资源,拖拽或者双击将打开文件,如果是空间数据的文件,则显示在地图窗口中。

(关于【浏览】面板的操作,请参考:连载| 7 浏览面板(Browser Panel)实用技巧

  • 文件型数据源

切换到矢量和栅格标签页,指定数据存储的路径,即可打开文件型矢量数据和栅格数据。

作为开源软件生态的一部分,QGIS对数据文件的支持是构建在OGR/GDAL开源库的基础上,因此对数据的读写能力也依赖于这些开源库所提供的数据引擎。

  • 矢量数据:支持 GeoPackage, GML, GeoJSON, GPX, KML, 分隔文本、ESRI格式(Shapefile,OpenFileGDB、FileGDB等)、MapInfo格式(TAB、MIF)、MicroStation 格式、AutoCAD DWG/DXF、GRASS等。(打开网页:https://gdal.org/drivers/vector/index.html 了解更多的矢量数据格式支持情况。)

  • 栅格数据:GeoTIFF, JPEG, ASCII Gridded XYZ, MBTiles, R or Idrisi rasters, GDAL Virtual, SRTM, Sentinel Data, ERDAS IMAGINE, ArcInfo Binary Grid, ArcInfo ASCII Grid等。(打开网址:https://gdal.org/drivers/raster/index.html 可查看完整栅格数据支持列表。

  • 网孔(mesh layer)数据源

网孔数据是一种非结构化的网格数据,由顶点(vertices)、边(edges)和表面(faces)组成,常用于模拟分析结果,如大气运动、流水淹没、污染物扩散等。

在【数据源管理器】中,切换到网孔标签页,可以看到打开网孔数据的界面。

QGIS通过MDAL提供网孔数据的支持,MDAL是一个开源库,github地址为:https://github.com/lutraconsulting/MDAL。

网孔数据支持如下格式:

NetCDF:常用格式,多用于科学研究领域。

GRIB:一般用在气象领域。

XMDF:如TUFLOW 模型的输出结果模拟。

DAT:多种水流动力学模型包的数据输出格式,如:BASEMENT, HYDRO_AS-2D, TUFLOW。

3Di:3Di模型包所使用的数据格式。

  • 分隔文本文件

文本文件包括txt、csv、dat、wkt等文件格式,使用分隔文本文件可以将带有空间位置信息的文本文件导入到QGIS,并还原其空间图形,显示在地图窗口中。

  • 数据库

由于文件型数据源在存储能力、性能、安全性、数据共享方面存在一些列问题,在大型项目中,GIS数据一般用数据库来存储和管理。

QGIS支持PostgreSQL/PostGIS, SQLite/SpatiaLite, Oracle, DB2、MSSQL Spatial, MySQL等数据库。

  • 网络数据源

网络地图和数据服务通常可以提供优质的底图和数据来源,叠加自己的业务数据快速得到分析结果。

QGIS支持打开的网络地图和数据服务包括:WM(T)S, WFS, WCS, CSW, XYZ tiles, ArcGIS services等。

  • QGIS格式数据源

QGIS自定义的数据格式包括:QML文件、虚拟数据源和内存数据源等。

 04 小结

QGIS丰富的数据支持能力,可以满足一般的工作和学习需要,对于一些特殊的数据格式和数据存储需求,有能力的朋友可以通过编写插件或者修改底层代码实现,这也是开源软件的优点之一。


在使用QGIS管理数据的过程中,需要特别注意因数据源类型不同导致数据的组织方式不同问题,例如,MapInfo的TAB格式和AutoCAD的DXF格式允许在一个图层存储点、线、面等几何图形,而QGIS中一个图层只存储一种几何图形。这种差异导致数据导入以后存储发生变化,可能需要重新梳理图层内容,或者评估QGIS是否是解决当前问题的最佳选择。

文章推荐

连载| 7 浏览面板(Browser Panel)实用技巧

连载| 6 图层进阶(三)- 快速美化图层数据

连载|5 QGIS图层进阶(二)- 连接属性表

4 QGIS 3.x 图层进阶(一)创建和编辑图层

连载| 3 图查属性、属性查图

连载 | 2 图层基本操作

连载 | 1 QGIS的下载与安装

版权声明

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

猜你喜欢

转载自blog.csdn.net/QGISClass/article/details/108784769