首页 GIS基础理论 QGIS入门教程四: 属性表怎么编辑?字段计算器咋用?

QGIS入门教程四: 属性表怎么编辑?字段计算器咋用?

作者: GIS研习社 更新时间:2025-12-10 23:00:56 分类:GIS基础理论

属性表改不动?字段计算器报错?你不是一个人

上周一个研究生私信我:‘Dr. Gis,我在QGIS里想给1000个地块加个“面积等级”字段,结果点来点去死活保存不了,差点重装软件!’——别笑,这几乎是每个GIS新手的必经之路。今天这篇,就是帮你把‘属性表编辑’和‘字段计算器’这两座大山,变成散步小路。

QGIS入门教程四: 属性表怎么编辑?字段计算器咋用?

属性表不是Excel,但比Excel更聪明

很多人一打开属性表就懵了:怎么不能直接打字?为什么改完数据消失了?——因为你没进‘编辑模式’。QGIS默认是只读状态,这是为了保护你的原始数据不被手滑毁掉(我当年在国土项目里吃过这亏)。

💡 Dr. Gis小贴士:就像开车必须先点火,编辑属性表前,务必点击工具栏那个铅笔图标(或右键图层→切换编辑模式),看到图层名旁边出现‘(编辑中)’才算成功。

进入编辑模式后,你可以:

  • 双击单元格修改单个值
  • 右键字段名→删除字段(慎用!)
  • 点击表头空白处→添加新字段

改完记得点‘保存编辑’(对勾图标),否则所有改动都会像没存档的游戏进度一样消失。

字段计算器:GIS界的‘自动公式填充机’

如果你还在手动给每个地块填面积、长度、分类编号……那你的时间正在被谋杀。字段计算器能让你用一行表达式,批量处理成千上万条记录——就像给整个班级自动算平均分,而不是挨个拿计算器敲。

举个实战例子:你想根据面积大小,自动给地块打上‘小型’‘中型’‘大型’标签。

  1. 确保已在编辑模式
  2. 打开属性表 → 点击顶部‘字段计算器’图标(长得像‘fx’)
  3. 勾选‘更新现有字段’或‘创建新字段’(建议后者,留个备份)
  4. 输入表达式:CASE WHEN "面积" < 1000 THEN '小型' WHEN "面积" < 5000 THEN '中型' ELSE '大型' END
  5. 点击‘确定’,见证魔法发生
⚠️ 常见踩坑:字段名必须用双引号包裹(如"面积"),字符串用单引号(如'小型')。少一个符号,计算器就罢工给你看。

高阶玩法:用Python表达式解放双手

当内置函数不够用时,勾选‘函数编辑器’→‘新建’,就能写Python脚本。比如我想把所有地名里的‘村’字替换成‘社区’:

def replace_village(name):
    return name.replace('村', '社区')

# 在表达式框调用:
replace_village("地名字段")

这招我在做城市更新项目时常用,半小时干完别人两天的手工活。

总结:三个动作,告别属性表恐惧症

  1. 编辑前先点铅笔(开启编辑模式)
  2. 计算器善用CASE WHEN和双引号
  3. 复杂逻辑交给Python函数

现在轮到你了:你在字段计算器里踩过什么坑?或者有什么神级表达式想分享?评论区告诉我——下期教程可能就是为你定制的!

相关文章