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

QGIS字段计算器常用公式汇总(含实操示例)

🧭 QGIS字段计算器常用公式汇总(含实操示例)


文章目录

  • 🧭 QGIS字段计算器常用公式汇总(含实操示例)
    • 📸 封面图建议
    • 📁 一、示例数据说明
    • 🧮 二、数值计算类公式
      • 1️⃣ 基本四则运算
      • 2️⃣ 计算面积
      • 3️⃣ 计算长度
      • 4️⃣ 单位换算
      • 5️⃣ 面积 × 高度 = 体积
    • 🧷 三、字符串处理类公式
      • 1️⃣ 拼接字段
      • 2️⃣ 大小写转换
      • 3️⃣ 截取子串
      • 4️⃣ 查找与替换
      • 5️⃣ 自动编号
    • 📅 四、日期与时间类公式
      • 1️⃣ 当前日期
      • 2️⃣ 计算建筑使用年限
    • 📍 五、几何与坐标类公式
      • 1️⃣ 获取坐标
      • 2️⃣ 获取中心点坐标
      • 3️⃣ 计算周长
      • 4️⃣ 外接矩形面积
      • 5️⃣ 距离指定点
    • 🔢 六、条件判断类公式
      • 1️⃣ IF 判断
      • 2️⃣ CASE 分类
      • 3️⃣ Null值处理
    • 🌍 七、空间分析类公式(进阶)
      • 1️⃣ 判断是否在某区域内
      • 2️⃣ 判断是否相交
      • 3️⃣ 计算与另一图层要素的距离
    • 🎲 八、随机数与数值函数
      • 1️⃣ 生成随机数
      • 2️⃣ 四舍五入
    • 🧠 九、综合实例:建筑风险等级评估
    • 💡 十、实战建议与技巧
    • 📚 结语
    • 🔗 推荐阅读
    • 🏷️ 标签建议


💡 摘要
本文系统整理了 QGIS 字段计算器(Field Calculator)中最常用的表达式公式,包括数值计算、字符串处理、日期时间、几何属性、条件判断与空间分析等模块。
并结合示例图层演示每类公式的具体应用,帮助读者快速掌握 QGIS 数据计算与自动化处理的核心技巧。


📸 封面图建议

主题图:QGIS 属性表界面 + 计算器窗口
推荐搜索关键词:QGIS Field Calculator interfaceQGIS attribute table expression


📁 一、示例数据说明

图层名称building.shp
数据类型面要素(建筑物)
主要字段name(建筑名称)、height(建筑高度)、area(建筑面积)、built_year(建成年份)、type(建筑类型)
软件环境QGIS 3.40.6(适用于任意 3.x 版本)

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


🧮 二、数值计算类公式

1️⃣ 基本四则运算

"height" * 2

将建筑高度加倍。

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

("height" * 3.14) / 10

自定义系数换算示例。


2️⃣ 计算面积

$area

返回面要素面积(单位取决于坐标系,建议使用投影坐标系)。
在这里插入图片描述

$area / 1000000

将面积转换为平方公里。
在这里插入图片描述
在这里插入图片描述


3️⃣ 计算长度

$length

获取线要素长度。


4️⃣ 单位换算

"height" * 3.281

米 → 英尺。


5️⃣ 面积 × 高度 = 体积

"area" * "height"

简单建筑体积估算(立方米)。


🧷 三、字符串处理类公式

1️⃣ 拼接字段

"name" || ' - ' || "type"

示例输出:教学楼 - 办公


2️⃣ 大小写转换

upper("name")
lower("type")

3️⃣ 截取子串

substr("name", 1, 3)

从第 1 个字符开始取 3 个字符。


4️⃣ 查找与替换

replace("type", '住宅', '居住区')

5️⃣ 自动编号

'B' || lpad(@row_number, 3, '0')

输出:B001, B002, B003...


📅 四、日期与时间类公式

1️⃣ 当前日期

now()

2️⃣ 计算建筑使用年限

year(now()) - "built_year"

2025 - 2005 = 20(使用年限 20 年)


📍 五、几何与坐标类公式

1️⃣ 获取坐标

x($geometry)
y($geometry)

2️⃣ 获取中心点坐标

x(centroid($geometry))
y(centroid($geometry))

3️⃣ 计算周长

perimeter($geometry)

4️⃣ 外接矩形面积

area(bounds($geometry))

5️⃣ 距离指定点

distance($geometry, make_point(117.123, 36.654))

示例:计算距泉城广场的距离。


🔢 六、条件判断类公式

1️⃣ IF 判断

if("height" > 50, '高层', '低层')

2️⃣ CASE 分类

CASEWHEN "type" = '住宅' THEN '居住区'WHEN "type" = '办公' THEN '写字楼'ELSE '其他'
END

3️⃣ Null值处理

coalesce("height", 0)

🌍 七、空间分析类公式(进阶)

1️⃣ 判断是否在某区域内

within($geometry, geometry(get_feature('study_zone', 'name', '泉城路街道')))

2️⃣ 判断是否相交

intersects($geometry, geometry(get_feature('road', 'name', '文化东路')))

3️⃣ 计算与另一图层要素的距离

distance($geometry, geometry(get_feature('school', 'id', 1)))

🎲 八、随机数与数值函数

1️⃣ 生成随机数

rand(1, 100)

随机整数。

randf(0.0, 1.0)

随机浮点数。


2️⃣ 四舍五入

round("height", 1)

保留 1 位小数。


🧠 九、综合实例:建筑风险等级评估

假设我们想根据建筑高度与使用年限自动分级:

CASEWHEN "height" > 60 AND (year(now()) - "built_year") > 20 THEN '高风险'WHEN "height" > 40 THEN '中风险'ELSE '低风险'
END
条件输出
高层 + 老建筑高风险
高层 + 新建筑中风险
其他低风险

💡 十、实战建议与技巧

实用技巧说明
✅ 面积/长度计算请使用投影坐标系否则结果可能以“度”为单位
🧮 建议新建字段保存结果避免覆盖原始数据
📋 多用“函数帮助”窗口可即时预览表达式用法
🔁 复杂判断优先用 CASE结构更直观,容错性更高

📚 结语

QGIS 字段计算器是 GIS 数据处理的核心工具,几乎可以完成数据清洗、自动计算、分类与空间关系判断等所有基础任务。
掌握本文列举的常用公式后,你可以轻松应对从数据准备到专题制图的各类操作。


🔗 推荐阅读

  • QGIS入门教程系列①:界面与图层基础操作
  • QGIS数据篇:导入Excel坐标生成点图层
  • QGIS空间分析篇:缓冲区与叠加分析

🏷️ 标签建议

#QGIS #字段计算器 #空间分析 #GIS数据处理 #地图制图

http://www.dtcms.com/a/500781.html

相关文章:

  • 国外网站seo用哪个网站做相册视频文件
  • 迅速上排名网站优化微信公众平台号申请注册入口
  • 网站开发语言p我要注册
  • 免费传奇网站模板网站建设是管理费用的哪项费用
  • 学校网站建设所使用的技术如何知道一个网站是谁做的
  • 网站建设分金手指专业五wordpress怎么使用插件下载失败
  • 15.搜索二叉树(一)
  • 营销网站的类型西安市城乡建设厅网站
  • NET开发网站开发工程师招聘cms+wordpress模板
  • FreeHub:一个免费产品的收录平台
  • 网站建设 美词响应式相册网站
  • 网站开发规范有哪些购物网站的商品展示模块
  • 旅游订票网站开发专门做二维码的网站
  • 【速写】优化的深度与广度(Adam Moun)
  • 什么网站有加工外发做的重庆最大的网络公司
  • 网站建设公司团队简介wordpress 主题 模板
  • 建设一个网站用什么搭建电商网站开发建设
  • iis 网站制作网站设计项目书
  • 【C语言初阶】分支和循环语句_for循环
  • 有什么做网站的国企图做的好的网站
  • 织梦做的网站在手机上显示优秀室内设计案例分析
  • 抚宁建设局网站建设企业网站注意事项
  • MySQL——用户权限和管理
  • python 微信网站开发深圳外贸网站建设企业
  • 找个免费的网站外贸平台有哪些用户量大的
  • 数据结构之线性表——双链表的操作
  • 【边打字.边学经典故事】_1_太甲明德
  • 深圳自助建站图书馆网站建设的规章制度
  • 在哪下载.net网站作品深圳网站制作的公司深圳app开发
  • 公司网站经典案例好多公司为啥只做网站 不考虑推广