arcgispython空间插值_基于python的空间距离权重计算——arcgis中的arcpy

这篇博客介绍了如何使用arcGIS 10中的Python库arcpy进行空间权重矩阵的计算,特别是通过欧几里得距离来构建。作者首先将arcpy表转换为pandas DataFrame,然后计算形状文件中各点之间的距离,最后输出为CSV文件。整个过程涉及到空间投影参数的获取、质心计算以及权重矩阵的构建。
摘要由CSDN通过智能技术生成

arcgis出了10后,python代替vb成为官方脚本语言,python中的gis库也是有很多,但因为本人最先接触的是arcgis所以就直接学习他自带的库arcpy了,主要以空间权重矩阵作为一个契机顺便学习arcpy。

代码及数据资料:https://github.com/shikanon/WeightDistance

因为还是不太习惯arcpy中的表操作,所以借助了pandas进行表操作,构建一个表转换:

#ListFields包含field类的数组

fields=arcpy.ListFields(path)

def GetTable():

'''将arcpy表单变为pandas表单,还是喜欢pandas些~'''

table=[]

fieldname=[field.name for field in fields]

#游标集合,用for 循环一次后没办法循环第二次!一个游标实例只能循环一次

data=arcpy.SearchCursor(path)

for row in data:

#Shape字段中的要数是一个几何类

r=[]

for field in fields:

r.append(row.getValue(field.name))

table.append(r)

return pd.DataFrame(table,columns=fieldname)

因为求欧几里距离在arcpy 中polyline直接有length属性所以只需要构建一个线类,然后直接求长度就行了

def getdistance(poi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值