首页 > 编程知识 正文

arcgis栅格值求和,arcgis栅格函数

时间:2023-05-03 23:44:35 阅读:195752 作者:562

很多人用arcgis 做土地利用类型分类的时候,可能会遇到一类问题,就是想根据属性表中的value 数字值做分类赋值,for example,我想给下面的属性表赋值。

普通处理:

打开属性表-文件-按属性选择-value=1: 再选择name字段,进行字段计算器计算,每一类都要进行这样的操作,在处理大数据的时候会很麻烦,浪费很多时间,今天分享给大家一个快速分类赋值方法,用到的是python语言:大家请看图示

 话不多说,直接上代码:

dim cal(x): if x==1: return "交通用地" elif x==2: return "坑塘" elif x==3: return "建筑用地" else: return "其他类型"

下面的name字段选择 cal(!value!)

计算逻辑:

用value 值进行name列赋值,其中1=交通用地 2=坑塘。。。。(具体命名自定)

代码解释:

def cal(x):       %%% cal是表达式,可以替换成其他短词,def对x进行定义

  if (x==1):     %%% 判断x等不等于1

    return "交通用地"      %%%等于1,给X赋值‘交通用地’

  elif (x==2):           %%%p判断x等不等于2

    return "坑塘"            %%%等于2,给x赋值“坑塘”

  elif(x==3):             %%%elif可以根据自己的分类需求, 每一类都添加elif

    return "建筑用地"

  else:                 %%最后要有else,构成一个完整的if 循环

return "其他用地"

Name:

  Cal(!Value!)    %%%让value 中的值执行以上逻辑计算

注意事项:

python语句格式比较严格,冒号之后的执行语句必须空两格符号必须使用英文输入法符号Python 语句中有字符串(汉字)时,必须使用双引号,数字不用

感谢大家的观看 ,希望能帮到初学者~

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。