耕地资源质量分类更新与监测项目中质量分类代码为12位数字、字母组成的代码(如333311101212),能反映10个指标,但是很不直观。
特在ARCGIS中采用计算字段的方法解析质量分类组合代码。
可解析成如 “粤桂闽丘陵平原-坡度≤2°-土层厚度≥100-土壤质地壤质-土壤有机质含量≥20g/kg-土壤pH值在5.5~6.5之间-生物多样性一般-土壤重金属污染状况绿色-一年三熟-即可恢复”
def idsplit(FLDM):
FQ = u'粤桂闽丘陵平原'
PD = [u'≤2°', u'2~6°', u'6~15°', u'15~25°', u'>25°']
TCHD = [u'≥100', u'60~100', u'<60']
TRZD = [u'壤质', u'黏质', u'砂质']
YJZHL = [u'≥20g/kg', u'10~20g/kg', u'<10g/kg']
SWDYX = [u'丰富', u'一般', u'不丰富']
ZJS = [u'绿色', u'黄色', u'红色']
SZ = [u'一年三熟', u'一年两熟', u'一年一熟']
EJDL = [u'水田', u'水浇地',u'旱地', u'即可恢复', u'工程恢复']
if FLDM[11] == "j":
ejdl = 4
elif FLDM[11] == "g":
ejdl = 5
elif FLDM[11] == "1":
ejdl = 1
elif FLDM[11] == "2":
ejdl = 2
else:
ejdl = 3
PH = [u'在6.5~7.5之间', u'在5.5~6.5之间', u'在7.5~8.5之间', u'<5.5', u'≥8.5']
if FLDM[6:8] == "10":
lstindex = 1
elif FLDM[6:8] == "2a":
lstindex = 2
elif FLDM[6:8] == "2b":
lstindex = 3
elif FLDM[6:8] == "3a":
lstindex = 4
else:
lstindex = 5
PDZ = PD[int(FLDM[2])-1]
TCHDZ = TCHD[int(FLDM[3])-1]
TRZDZ = TRZD[int(FLDM[4])-1]
YJZHLZ = YJZHL[int(FLDM[5])-1]
PHZ = PH[int(lstindex)-1]
SWDYXZ = SWDYX[int(FLDM[8])-1]
ZJSZ = ZJS[int(FLDM[9])-1]
SZZ = SZ[int(FLDM[10])-1]
EJDLZ = EJDL[int(ejdl)-1]
return str(FQ) + u"-坡度" + str(PDZ) + u"-土层厚度" + str(TCHDZ) + u"-土壤质地" + str(TRZDZ) +u"-土壤有机质含量" + str(YJZHLZ) + u"-土壤pH值" + str(PHZ) +u"-生物多样性" + str(SWDYXZ) + u"-土壤重金属污染状况" + str(ZJSZ) +u"-" + str(SZZ) + u"-" + str(EJDLZ)