ArcGIS标注表达式与字段计算中的python应用
2021/12/5 17:18:04
本文主要是介绍ArcGIS标注表达式与字段计算中的python应用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 前言
- 标注
- 分行标注
- 分类标注
- 分行并分类标注
- 字段计算
- 字段截取与判断
- 格式化桩号
前言
在数据处理和符号化与标注设置过程中,python一个很方便的工具,限于本人的代码水平,每次需要的时候都是一点一点百度拼凑出来,可能不是最优解,也基本能满足需求,希望把用到过的python表达式或者函数记录下来,一点点积累。
ArcGIS环境:ArcGIS pro,与ArcMap的界面区别较大,功能一致
标注
分行标注
目标:两个或多个字段分行标注
python表达式:[市]+'\n'+[NUM]
设置与效果:
对齐细节:默认情况下,多行标注都是居中对齐的,但有时需要左对齐或者右对齐,可在标注的 堆叠 中进行设置
分类标注
目标:用不同颜色标注不同区间的数值
python表达式:
def FindLabel ( [NUM] ): if int([NUM]) <= 50: return "<CLR red='200'>"+[NUM]+"</CLR>" else : return "<CLR red='50' green='150' blue='200'>"+[NUM]+"</CLR>"
标注表达式设置与效果
分行并分类标注
目标:为多行标注设置不同颜色分类
python表达式:
def FindLabel ( [市],[NUM] ): if int([NUM]) <= 30: return "<CLR red='168'>"+[市]+'\n'+[NUM]+"</CLR>" elif int([NUM])<=80: return "<CLR green='168'>"+[市]+'\n'+[NUM]+"</CLR>" else : return "<CLR blue='168' >"+[市]+'\n'+[NUM]+"</CLR>"
标注表达式设置与效果
PS:对齐方式同样可在 堆叠 中进行设置
字段计算
字段截取与判断
目标:判断省市中省份是否正确
python表达式:
def pd(a,b): if a[0:2]==b[0:2]: return "正确" else: return "不正确"
计算与结果:
格式化桩号
目标:将长度、距离等数字,格式化为工程图中常用的标准桩号表达式,如K1+123.456
思路:把每一部分提取出来,然后进行拼装
python函数
def ZHLable(ZH): strdist=format(ZH,'.3f') loc=str(ZH).find('.') fractionalpart=str(strdist)[loc+1:loc+4] hundredpart = str(format(int(ZH%1000),'0>3d')) thousandpart = str(int(ZH/1000)) ZHL = 'K'+thousandpart+'+'+hundredpart+'.'+fractionalpart return ZHL
计算结果
这篇关于ArcGIS标注表达式与字段计算中的python应用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型