Gis 如何计算Arcview 10中栖息地斑块的数量和面积

Gis 如何计算Arcview 10中栖息地斑块的数量和面积,gis,arcpy,arcmap,Gis,Arcpy,Arcmap,我目前正在写硕士论文,在地理信息系统方面遇到了实际问题。我已从下载了arc gis栅格数据集 我成功地在arcmap 10中绘制了它。这张地图由各种不同的栖息地组成。我想知道我如何选择一种栖息地类型,比如“潮湿森林”,并计算出该栖息地有多少斑块,以及每个斑块有多大 我做这件事已经好几个星期了,没有什么进展。有人建议我将分区几何视为一张看起来很有希望的表格,但我尝试了一下编码,但我无法让它工作。我把我的一些尝试贴在下面 >>> import arcpy >>>

我目前正在写硕士论文,在地理信息系统方面遇到了实际问题。我已从下载了arc gis栅格数据集

我成功地在arcmap 10中绘制了它。这张地图由各种不同的栖息地组成。我想知道我如何选择一种栖息地类型,比如“潮湿森林”,并计算出该栖息地有多少斑块,以及每个斑块有多大

我做这件事已经好几个星期了,没有什么进展。有人建议我将分区几何视为一张看起来很有希望的表格,但我尝试了一下编码,但我无法让它工作。我把我的一些尝试贴在下面

>>> import arcpy
>>> from arcpy import env
>>> from arcpy.sa import *
>>> env.workspace = "Q:/MADGIS"
>>> outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes      "zonalgeomout", 0.2)
Runtime error <class 'arcgisscripting.ExecuteError'>: ERROR 000626: Tool     ZonalGeometryAsTable is not licensed. 
>>> arcpy.CheckOutExtension("Spatial")
u'CheckedOut'
>>> outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA",       cellSize)
Runtime error <type 'exceptions.NameError'>: name 'inZoneData' is not defined
导入arcpy >>>从arcpy导入环境 >>>从arcpy.sa导入* >>>env.workspace=“Q:/MADGIS” >>>OutZonalGeometry稳定=分区Geometry稳定(“zones.shp”,“Classes”zonalGeometry mout”,0.2) 运行时错误:错误000626:工具ZonalGeometryTable未获得许可。 >>>arcpy.CheckOutExtension(“空间”) 你“检查完毕” >>>分区外几何稳定=分区几何稳定(分区数据、分区域、“面积”、单元大小) 运行时错误:未定义名称“inZoneData”
问题是,我在示例中复制的一些内容是特定于该示例的,但我不确定。如果有人能为我指出正确的方向,这将是一个很大的帮助

您似乎没有设置一些参数。 根据上面的链接,您必须设置以下参数:

# Set local variables
inZoneData = "YourShapefileName.shp"
zoneField = "Classes"
outTable = "zonalgeomout02.dbf"
processingCellSize = 0.2

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

更新:

您必须对光栅数据使用以下代码:

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/Users/Puya/Downloads/Documents/StackOverflow/veg_grid"
inZoneData = "vegetation"
zoneField = "Value"
outTable = "zonalgeomout02.dbf" 
processingCellSize = 29
arcpy.CheckOutExtension("Spatial")
outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA", processingCellSize)

此外,在ArcMap中,您可以使用ArcToolbox->Spatial Analyst->Zonal->Zonal->ZonalGeometryAsTable并选择上述参数,然后运行ZonalGeometryAsTable。

它希望我在单个文件中读取数据,但我下载来创建地图的数据是一个包含许多不同文件(.adf、.dat等)的文件夹Arcmap显示。我仍然可以这样做吗?是的,你可以。我下载了上面的数据并成功运行了这个脚本。我更新了我的答案。