当前位置: 首页 > ds >正文

QGIS新手教程9:字段计算器进阶用法与批量处理技巧

✅ QGIS新手教程9:字段计算器进阶用法与批量处理技巧


目录

    • ✅ QGIS新手教程9:字段计算器进阶用法与批量处理技巧
    • 📌 摘要
    • 🧭 教程结构
      • 一、字段计算器简介与打开方式
      • 二、新增字段与批量赋值
        • 示例1:创建“type\_text”字段,并赋值中文类别名称
      • 三、更新已有字段(覆盖原值)
        • 示例2:将空值字段统一设为“未知”
      • 四、几何属性计算(面积、长度、坐标等)
        • 示例3:计算面状图层的面积(单位:平方米)
        • 示例4:获取中心点坐标(经纬度)
      • 五、批量拼接字段内容
        • 示例5:拼接“街道名 + 面积”
      • 六、表达式书写技巧与调试建议
    • 🔮 下一篇预告


📌 摘要

字段计算器是 QGIS 中处理属性数据的重要工具。本篇教程将深入讲解字段计算器的进阶用法,包括条件表达式赋值、多个字段的逻辑拼接、基于几何属性的面积与长度计算等。通过实战案例演示如何批量新增、修改字段数据,并结合表达式函数提升数据清洗与加工效率,帮助你掌握地图数据处理的“核心操作技”。适合有一定基础的新手进阶学习。


🧭 教程结构

一、字段计算器简介与打开方式

  • 两种打开方式:

    1. 属性表 → 点击字段计算器按钮;
      在这里插入图片描述

    2. 图层右键 →【字段管理器】→“字段计算”列。
      在这里插入图片描述


二、新增字段与批量赋值

示例1:创建“type_text”字段,并赋值中文类别名称
CASE WHEN "highway" = 'primary' THEN '主干道'WHEN "highway" = 'secondary' THEN '次干道'ELSE '其他'
END

🧩 设置项说明:

  • 字段类型:文本(string)
  • 长度:20
    在这里插入图片描述
    在这里插入图片描述

三、更新已有字段(覆盖原值)

示例2:将空值字段统一设为“未知”
CASE WHEN "name" IS NULL THEN '未知'ELSE "name"
END

🧩 操作提醒:

  • 打开属性表 → 切换到“字段计算器” → 取消“创建新字段”,选中目标字段 → 执行表达式。

在这里插入图片描述
在这里插入图片描述


四、几何属性计算(面积、长度、坐标等)

示例3:计算面状图层的面积(单位:平方米)
$area

在这里插入图片描述
在这里插入图片描述

示例4:获取中心点坐标(经纬度)

.

x(transform($geometry, 'EPSG:3857', 'EPSG:4326'))

🧭 附表:常用几何函数速查

表达式功能说明
$length获取线段长度(单位随 CRS)
$area获取面积
x($geometry) / y($geometry)获取点的 X/Y 坐标
centroid($geometry)获取几何中心
transform()坐标系转换(适用于坐标提取)

五、批量拼接字段内容

示例5:拼接“街道名 + 面积”
"name" || '(' || "area" || ')'

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


六、表达式书写技巧与调试建议

  • 使用函数列表左下角搜索关键词;

  • 表达式报错常见问题:

    • 字段名大小写不一致;
    • 字段名中有空格或特殊字符,需加双引号;
  • 使用 coalesce() 可避免空值报错。


🔮 下一篇预告

QGIS新手教程10:专题图制图技巧(分级渲染 + 配色 + 图例布局)
学会如何根据字段制作分级色斑图、点密度图,配置图例、比例尺与地图标题,完成一张完整专题图输出!

http://www.xdnf.cn/news/15641.html

相关文章:

  • 操作HTML网页的知识点
  • Linux下调试器gdb/cgdb的使用
  • Unity 多人游戏框架学习系列一
  • 23.将整数转换为罗马数字
  • 全局 WAF 规则:构筑 Web 安全的坚固防线
  • 设计模式一: 模板方法模式 (Template Method Pattern)
  • 基于 AI 的大前端安全态势感知与应急响应体系建设
  • 检查WSL2子系统文件大小并删除
  • 《星盘接口10:时空回响》
  • OpenAI GPT-4o技术详解:全能多模态模型的架构革新与生态影响
  • 虚拟主机CPU占用100导致打不开的一次处理
  • 利用模型生成每个样本每个特征的 SHAP 值
  • 【Git 中的 branch 工作流】关于git 中 branch 的一些基本操作
  • 【每日算法】专题十_字符串
  • 小架构step系列15:白盒集成测试
  • Translational Psychiatry | 通过流形学习和网络分析揭示精神分裂症与双相I型障碍的差异性精神病症状
  • 音视频学习(三十九):IDR帧和I帧
  • 《黑马笔记》 --- C++核心编程
  • PHP安全漏洞深度解析:文件包含与SSRF攻击的攻防实战
  • 在新闻资讯 APP 中添加不同新闻分类页面,通过 ViewPager2 实现滑动切换
  • 网络基础协议综合实验
  • GeoTools 工厂设计模式
  • 【Linux庖丁解牛】— 保存信号!
  • SAP学习笔记 - 开发45 - RAP开发 Managed App New Service Definition,Metadata Extension
  • C++中list各种基本接口的模拟实现
  • 25、企业能源管理(Energy):锚定双碳目标,从分类管控到智能优化的数字化转型之路
  • npu-smi info命令参数解释
  • C++-linux系统编程 8.进程(三)孤儿进程、僵尸进程与进程回收
  • 数据结构之单链表
  • Java :List,LinkedList,ArrayList