背景说明
现有某行政区域shp数据,需要出各区之间的OD联系图(比如人口迁移量、经济联系等)
实现效果
思路流程
计算各个面的中心点,利用双循环一一进行起终点匹配,保证数据不重复(比如【白云区–天河区】和【天河区–白云区】是同一条线),创建一个包含起终点坐标的表,在利用XYtoline方法生成OD线
实现代码
import arcpy
# 创建OD表,需改路径和名称
arcpy.CreateTable_management(r"C:/Users/Guibi/Documents","OD.dbf")
arcpy.AddField_management(r"C:/Users/Guibi/Documents/OD.dbf","OD","TEXT","","",20,"OD","","","")
arcpy.AddField_management(r"C:/Users/Guibi/Documents/OD.dbf","Ox","DOUBLE",0,0,"","起点x","","","")
arcpy.AddField_management(r"C:/Users/Guibi/Documents/OD.dbf","Oy","DOUBLE",0,0,"","终点x","",""