QGIS创建模型
QGIS模型构建功能可以通过可视化的方法将多个工具组合在一起,从而通过定义工作流的方式创建地理处理模型。
模型可以被轻松复用,这样简化了重复且复杂的地理处理工作,节约人力、物力和时间成本。
业务分析
我这次的业务主要是几个图层之间的叠加空间分析并计算结果
这里以供地图层与业务图层叠加分析为例
打开模型构建器,添加矢量图层
(供地图层、业务图层)
计算业务图层的图斑面积
使用字段计算器(单位亩)
($area*0.0015)
计算供地和业务图层相交结果
计算重叠图斑的融合面积
- 计算业务图斑与供地图斑相交的各个部分面积
- 按业务图斑的唯一id分类统计相交面积
sum("分割相交面积",group_by:="JCBH")
- 按汇总统计后的面积进行融合
- 按字段值连接属性(业务图层和融合后的数据)
计算征地批文
- 使用字段计算器计算征地批文
concatenate("PCWH",group_by:="JCBH",concatenator:=',')
- 按唯一id融合供地批文
- 按字段值连接属性(业务图层和融合后的数据)
计算差异数据
- 计算征地与业务数据差异数据
- 按业务图层唯一id融合差异数据
- 计算业务图层与供地差异面积
- 按字段值连接属性(业务图层和融合后的数据)
- 根据差异面积计算批文数据,如果存在差异则在后面添加null
CASE WHEN not("供地批文1" is NULL) and not("供地差异面积" is NULL) THEN concat( "供地批文1",',null') else "供地批文1" END
计算供地的套合比
("融合分割相交面积" / "图斑面积") * 100
使用字段计算器将套合比为null的值设置为0
CASE WHEN "供地套合比1" is NULL THEN 0 else "供地套合比1" END