Arcpy—向已经存在的点图层中添加数据
前提:已经存在一个点图层和需要添加的数据(本例中是txt文档数据)
Code:
1 import arcpy 2 3 arcpy.env.workspace = "F:\ArcpyBook\Ch8\WildfireData\WildlandFires.mdb" #S设置工作空间,这里是空shp所在的位置 4 5 f = open(r"F:\ArcpyBook\Ch8\WildfireData\NorthAmericaWildfires_2007275.txt",'r') 6 lsFires = f.readlines() 7 try: 8 with arcpy.da.InsertCursor('FireIncidents',('SHAPE@XY','CONFIDENCEVALUE')) as cur: 9 #创建游标,FireIncidents参数是shp的名称,('SHAPE@XY','CONFIDENCEVALUE')参数是一个元组 10 #元组里面每一项都是一个字段,表示往shp里面哪些字段插入数据。 11 #SHAPE@XY是几何令牌,表示要素的X,Y质心坐标 12 cntr = 1 13 for fire in lsFires: 14 if 'Latitude' in fire: #跳过第一行 15 continue 16 vals = fire.split(',') 17 latitude = float(vals[0]) 18 longitude = float(vals[1]) 19 config = int(vals[2]) 20 rowValue = [(latitude,longitude), config] #需要插入的数据格式和顺序需要与('SHAPE@XY','CONFIDENCEVALUE')一致 21 cur.insertRow(rowValue) #往shap中插入数据 22 print("Record number "+ str(cntr) + 'writen to feature class') 23 cntr += 1 24 except Exception as e: 25 print(e) 26 finally: 27 f.close()
--------------------成功,肯定是需要一点一滴积累的--------------------