QGIS入门教程二: 矢量数据怎么加?图层面板如何用?

GIS基础理论
Dr.GIS
wowwwai GIS研习社 · 工具流程与项目排障

引言:在这篇《QGIS入门教程二: 矢量数据怎么加?图层面板如何用?》里,我们解决两个新手最常遇到的问题:怎样把 Shapefile、GeoPackage、GeoJSON 等矢量数据加载到 QGIS,以及加载之后如何通过图层面板管理、查看和调整图层。

如果你刚打开 QGIS,看到空白画布和左侧一堆面板,很容易不知道从哪里开始。实际上,QGIS 的核心操作顺序很简单:先添加矢量数据,再在图层面板中控制显示顺序、样式、属性表和坐标参考系。掌握这一步,后面的制图、查询、编辑和空间分析才有基础。

QGIS入门教程二 矢量数据添加和图层面板使用示意图
QGIS 添加矢量数据后,主要通过图层面板控制图层显示、顺序、样式和属性表。

背景:QGIS矢量数据添加前要先认识几种常见格式

在 QGIS 中,矢量数据通常表示点、线、面三类地理对象。例如行政区边界是面,道路是线,学校或监测站是点。QGIS 支持的矢量格式很多,初学者最常见的是下面几类。

格式 常见扩展名 新手注意点
Shapefile .shp、.shx、.dbf、.prj 不是单个文件,必须保证同名配套文件放在同一文件夹
GeoPackage .gpkg 单文件数据库格式,适合保存多个图层,推荐日常练习使用
GeoJSON .geojson、.json 常用于 WebGIS,但大文件加载可能较慢
KML .kml、.kmz 常来自 Google Earth 或外部共享数据,字段结构可能不规范
CSV点数据 .csv 需要经纬度字段或坐标字段,严格来说要按“分隔文本图层”方式加载

这篇文章重点讲 QGIS 矢量数据添加和图层面板使用。CSV 点数据也能作为矢量点显示,但它的加载方式稍有不同,初学阶段可以先掌握 Shapefile、GeoPackage 和 GeoJSON。

原理:为什么添加矢量数据后要看图层面板

QGIS 的地图画布只负责显示结果,真正管理数据的是图层面板。每添加一个矢量图层,QGIS 都会在图层面板中生成一条图层记录。你看到的地图显示顺序、是否可见、符号颜色、属性表入口、过滤条件和坐标信息,大多都从这里开始操作。

可以把 QGIS 图层面板理解为一个“地图目录”。上面的图层会覆盖下面的图层,面图层如果放在点图层上方,可能会把点遮住;道路图层如果放在行政区边界下面,线也可能看不清。所以,添加数据只是第一步,正确使用图层面板才是 QGIS 入门的关键。

另外,QGIS 项目文件本身通常不直接保存原始矢量数据,而是保存数据路径、图层样式、图层顺序和工程设置。因此,如果你移动了原始数据文件,下次打开工程可能会出现图层丢失或路径失效。

步骤:QGIS矢量数据怎么添加

方法一:从浏览器面板拖拽添加

  1. 打开 QGIS。
  2. 在左侧找到“浏览器”面板。
  3. 展开你的磁盘目录,找到包含矢量数据的文件夹。
  4. 如果是 Shapefile,找到 .shp 文件;如果是 GeoPackage,找到 .gpkg 文件。
  5. 把数据直接拖到地图画布中,或拖到图层面板中。

这是 QGIS 入门时最直观的方法。它适合你已经知道数据存放位置,并且只是想快速查看数据内容的场景。

方法二:通过“数据源管理器”添加矢量图层

  1. 在顶部菜单中选择“图层”。
  2. 选择“数据源管理器”。
  3. 进入“矢量”选项。
  4. 在“源”位置选择文件。
  5. 点击“添加”。
  6. 如果一个文件中包含多个图层,例如 GeoPackage,按提示选择需要加载的图层。
  7. 点击“关闭”,回到地图画布查看结果。

数据源管理器更适合正式工作,因为它能更清楚地选择编码、数据源类型和多图层数据。对于新手来说,如果拖拽添加失败,可以优先尝试这个方法。

方法三:直接把文件拖到 QGIS 窗口

对于 .shp.gpkg.geojson 等常见矢量数据,也可以从文件资源管理器直接拖入 QGIS 窗口。这个方法速度快,但不建议在复杂项目中完全依赖它,因为你可能不容易确认数据来源路径和图层选择细节。

步骤:图层面板如何用

1. 控制图层显示和隐藏

图层名称前面的复选框用于控制图层是否显示。勾选表示显示,取消勾选表示隐藏。隐藏图层不会删除数据,只是不在地图画布上绘制。

如果你加载了多个行政区、道路、水系或点位图层,建议先只打开一个图层观察,再逐步打开其他图层,避免刚开始就被复杂画面干扰。

2. 调整图层顺序

在图层面板中,图层越靠上,绘制时越靠前。常见顺序可以这样安排:

  • 点图层放在最上方,例如学校、站点、采样点。
  • 线图层放在中间,例如道路、河流、管线。
  • 面图层放在下方,例如行政区、地块、土地利用。
  • 底图或影像图层放在最下方。

如果你发现点数据“消失”了,不一定是数据没加载成功,也可能是被面图层盖住了。先把点图层拖到图层面板最上方,再检查显示效果。

3. 打开属性表查看数据

在图层面板中右键某个矢量图层,选择“打开属性表”。属性表是矢量数据的字段信息,例如行政区名称、道路等级、人口数量、面积字段等。

初学者添加矢量数据后,建议做三件事:

  • 打开属性表,确认是否有记录。
  • 查看字段名称,判断数据是否符合你的分析需求。
  • 点击地图上的要素,确认空间图形和属性记录是否对应。

4. 缩放到图层范围

有时 QGIS 已经成功添加图层,但地图画布仍然一片空白。这时可以在图层面板中右键图层,选择“缩放到图层”。

如果缩放后仍然看不到数据,继续检查以下问题:数据是否为空、坐标参考系是否异常、符号颜色是否和背景接近、图层是否被过滤。

5. 修改图层名称

右键图层,选择“重命名图层”,可以把默认文件名改成更清楚的中文名称,例如“区县边界”“主干道路”“采样点”。

重命名图层不会修改原始文件名,只会改变当前 QGIS 工程中的显示名称。对于教学练习和项目整理来说,这个习惯很重要。

6. 修改图层样式

双击图层,或右键选择“属性”,进入图层属性窗口。选择“符号系统”,可以调整颜色、线宽、填充透明度和点符号。

对于面图层,建议降低填充透明度,保留边界线,这样不容易遮挡下面的底图或上面的点线图层。对于线图层,适当增加线宽可以让道路、河流更清楚。对于点图层,可以选择简单圆点或按类别显示。

常见坑:QGIS添加矢量图层失败或看不到数据怎么办

1. Shapefile只复制了shp文件

Shapefile 不是一个单独文件。至少需要 .shp.shx.dbf,通常还需要 .prj。如果你只拿到了 .shp,QGIS 可能无法正确读取图形或属性。

正确做法是把同名的 Shapefile 配套文件放在同一个文件夹中,不要只复制其中一个文件。

2. 图层加载了但地图画布空白

优先右键图层,选择“缩放到图层”。如果仍然没有显示,再检查图层是否被取消勾选、符号是否透明、数据是否没有要素。

如果图层范围异常大或飞到很远的位置,通常要检查坐标参考系,也就是 CRS。CRS 是坐标参考系统,用来说明数据坐标对应地球上的哪个位置。

3. 中文字段或中文名称乱码

部分旧 Shapefile 可能存在编码问题,尤其是来自早期软件或不同系统的数据。可以在添加数据时检查编码设置,常见编码包括 UTF-8、GBK、GB18030。

如果只是练习数据,建议尽量使用 GeoPackage,能减少 Shapefile 编码和多文件管理带来的问题。

4. 图层顺序不合理导致被遮挡

面图层放在上方时,可能遮住点和线。解决方法很简单:在图层面板中拖动图层顺序,把点放上面、线放中间、面放下面。

5. 移动数据文件后工程打不开图层

QGIS 工程文件通常保存的是数据路径。如果你把数据文件夹移动到其他位置,QGIS 下次打开工程时可能提示找不到数据源。

建议一个项目建立一个固定文件夹,把工程文件和数据文件放在清晰的目录结构中,例如:

project_qgis_beginner/
  data/
    boundary.gpkg
    roads.gpkg
    points.gpkg
  qgis_project/
    practice.qgz

方法比较:几种添加矢量数据方式怎么选

方法 适合场景 优点 注意点
浏览器面板拖拽 快速查看本地数据 直观、速度快 需要先找到正确文件位置
数据源管理器 正式加载矢量数据 参数清楚,适合多格式数据 步骤比拖拽稍多
文件直接拖入窗口 临时浏览单个文件 最快 复杂数据源不够清晰
从数据库加载 PostGIS、GeoPackage 多图层项目 适合工程化管理 初学者需要理解连接和图层选择

如果你是 QGIS 新手,建议先用浏览器面板拖拽理解“数据进入 QGIS”的过程,再用数据源管理器养成规范加载数据的习惯。做课程作业或正式项目时,优先使用 GeoPackage 或结构完整的 Shapefile。

检查清单:添加矢量数据后必须确认的事项

  • 图层面板中是否出现了新图层。
  • 图层前面的复选框是否已经勾选。
  • 是否已经右键执行“缩放到图层”。
  • 属性表是否能打开,记录数量是否正常。
  • 点、线、面图层顺序是否合理。
  • 符号颜色和透明度是否适合当前底图。
  • Shapefile 配套文件是否完整。
  • 图层坐标参考系是否符合数据来源。
  • 工程文件和数据文件是否放在稳定目录中。
  • 图层名称是否已经改成容易理解的名称。

新手判断 QGIS 矢量数据是否成功加载,不要只看地图画布。更可靠的顺序是:看图层面板、缩放到图层、打开属性表、检查图层顺序。

FAQ:QGIS矢量数据添加和图层面板常见问题

Q1:QGIS添加矢量数据后为什么什么都看不到?

最常见原因是当前地图范围没有定位到数据所在区域。右键图层,选择“缩放到图层”。如果仍然看不到,再检查图层是否勾选、符号是否透明、数据是否为空、坐标参考系是否异常。

Q2:QGIS图层面板不见了怎么办?

可以在顶部菜单中找到“视图”,进入“面板”,重新勾选“图层”。不同版本界面文字可能略有差异,但思路是重新打开图层面板。

Q3:为什么我的点图层被行政区面图层挡住了?

这是图层顺序问题。图层面板中越靠上的图层越后绘制,也就越容易显示在前面。把点图层拖到面图层上方即可。面图层也可以设置透明填充,减少遮挡。

Q4:QGIS可以直接打开shp文件吗?

可以,但要注意 Shapefile 是一组文件,不是只有 .shp。同名的 .shx.dbf.prj 等文件应放在同一目录中,否则可能出现无法加载、属性缺失或坐标不正确。

Q5:GeoPackage和Shapefile哪个更适合QGIS新手?

如果是新的练习项目,GeoPackage 更推荐。它是单文件格式,可以保存多个图层,避免 Shapefile 多文件散落、字段名长度限制和编码问题。不过很多公开数据仍然使用 Shapefile,所以两种格式都需要了解。

Q6:图层面板里删除图层会不会删除原始数据?

一般不会。你在 QGIS 图层面板中移除图层,只是从当前工程中取消引用,不会删除磁盘上的原始文件。但如果你在文件管理器中删除数据文件,工程再次打开时就会找不到数据源。

Q7:为什么属性表能打开,但地图位置不对?

通常与坐标参考系有关。属性表能打开说明数据记录存在,但坐标解释可能不正确。可以查看图层属性中的 CRS,并与数据来源说明对比。不要随便“指定坐标系”覆盖原数据,先确认数据本来使用的坐标系统。

结论:先会添加数据,再会管理图层

QGIS 入门不需要一开始就掌握复杂空间分析,先把“添加矢量数据”和“使用图层面板”练熟就足够关键。你需要知道常见矢量格式,能通过浏览器面板或数据源管理器加载数据,并能在图层面板中完成显示控制、顺序调整、属性表查看和样式修改。

实际操作时,请记住一个简单流程:添加矢量图层,缩放到图层,打开属性表,调整图层顺序,修改符号样式,最后保存 QGIS 工程。只要这个流程稳定,后续学习坐标系、属性查询、空间分析和专题制图都会顺畅很多。