怎么通过excel 点集导入arcmap 实现显示多边形
请教各位arcgis desktop 当中的各位业界前辈,晚辈有个问题真的是想不明白了
个人想利用excel当中已有的数据点集(这些点集都存在一列之中),导入到arcmap的面图层当中,并实现利用点集连接后显示多边形
这是我的思路
下面是写的代码,基本实现了第一步和最后一步,但是中间两步我是实在不会了
还有一个小问题就是:xlrd和xlwt这两个python的库怎么添加进arcgis的库当中来着?
我以前的老电脑有,但是这个新的电脑没有我还忘了怎么添加了......
这是我第一次遇到了怎么都想不明白也没有思路的问题了
尤其是在设立属性值并连接这一块.....
还请各位arcgis的前辈们不吝赐教,晚辈感激不尽.......
个人想利用excel当中已有的数据点集(这些点集都存在一列之中),导入到arcmap的面图层当中,并实现利用点集连接后显示多边形
这是我的思路
下面是写的代码,基本实现了第一步和最后一步,但是中间两步我是实在不会了
>>>#!user/bin/env python
# -*- coding: utf-8 -*-
import arcpy
import xlrd
import xlwt
xlsPath = r"D:\地图\地图底图\duobianxing.xls"
data = xlrd.open_workbook(xlsPath)
table = data.sheets()[0]#通过索引顺序获取
cols = table.col_values(7)#该数值需要调整
nrows = table.nrows
point = arcpy.Point()
array = arcpy.Array()
polygonGeometryList =
for i in range(1,nrows):
str = table.cell(i,7).value#该处i后的数值应该是需要调整的
points = str.split(u' ')
for j in points:
xy = j.split(',')
print xy[0]
print xy[1]
print '\n'
point.X = float(xy[0]);point.Y = float(xy[1])
array.add(point)
polygon = arcpy.Polygon(array)
polygonGeometryList.append(polygon)
array.removeAll()
arcpy.InsertFeatures_management(polygonGeometryList, "D:\\地图\地图底图\heshimian.shp")
print 'over'
还有一个小问题就是:xlrd和xlwt这两个python的库怎么添加进arcgis的库当中来着?
我以前的老电脑有,但是这个新的电脑没有我还忘了怎么添加了......
这是我第一次遇到了怎么都想不明白也没有思路的问题了
尤其是在设立属性值并连接这一块.....
还请各位arcgis的前辈们不吝赐教,晚辈感激不尽.......
6 个回复
徐珂 - ArcGIS for Desktop
赞同来自: 江宝骅
1、转点,Add XY Data,在File菜单,Add Data;
2、点连线,Points to Line,注意sort field是选择分组字段,勾选Close Line;
3、线转多边形,Feature to Polygon。
穆天龙 - 专注Desktop
赞同来自: turtle
如果目前没有矢量数据,就使用arcpy调用Create Feature Class创建一个空的Polygon要素类,然后遍历Excel中行的同时,使用Insert Cursor来逐行插入Polygon对象就可以了。
你标注的红色部分的解答:
1.怎么建立能和Excel点集对应的属性字段?
答:我估计你想根据坐标创建多边形,那么不需要创建单独的字段,Polygon图形存储在Shape字段中,在创建要素类的时候就Shape字段。具体怎么构建多边形取决于Excel中点串存储的结构。
2.第二段红色段落的问题不是很明白。
另外,我印象中当前版本的ArcGIS自带的Python已经装了xlrd和xlwt。
turtle
赞同来自: Watson
1. 不用安装xlrd和xlwt,已自带;
2. 建议可先根据excel表格中的属性字段在ArcCatalog中创建一个空多边形要素类;
3. 打开excel逐一读取各行,循环处理属性数据以及坐标数据;
4. 参考arcpy.da.InsertCursor方式将各个多边形要素的几何属性和其他属性信息插入到刚才新建的多边形要素类中:帮助文档,关注最后的几个示例代码
江宝骅
赞同来自:
python库的安装
1、需要命令行,可参考以下链接
http://www.cnblogs.com/nima/p/5041204.html
2、不用输入命令,可以先安装pycharm软件,然后再安装库
Watson
赞同来自:
如何操作?需要使用什么组件和技术?
python可以链接到oracle数据表中操作吗?
如果多边形有空洞,怎么处理?
谢谢!
要回复问题请先登录或注册
发起人
arcgis新人
相关问题
问题状态