Géométrie zonale (table) (Spatial Analyst)
Récapitulatif
Calcule, pour chaque zone d'un jeu de données les mesures géométriques (superficie, périmètre, épaisseur et caractéristiques de l'ellipse) et consigne les résultats dans une table.
Pour en savoir plus sur l'utilisation de la fonction Géométrie zonale
Illustration
Utilisation
-
Une zone est définie comme l'ensemble des surfaces en entrée ayant la même valeur. Les surfaces ne sont pas nécessairement contiguës. Vous pouvez utiliser à la fois des jeux de données raster et de classes d'entités pour la zone en entrée.
-
Si les données de zone en entrée sont un jeu de données de classes d'entités, une taille de cellule doit être définie par le paramètre Taille de cellule de traitement ou dans l'environnement Taille de cellule.
-
Les calculs pour chaque zone sont enregistrés dans la table en sortie.
Lorsque vous spécifiez les données de zone en entrée, le champ de zone par défaut est le premier champ valide disponible. S'il n'existe aucun autre champ valide, le champ ObjectID (par exemple, OID ou FID) est utilisé par défaut.
Si un champ réservé (par exemple, OBECTID, FID ou OID) est sélectionné pour le champ de zone, cela peut causer une certaine ambiguïté dans le résultat. Le résultat inclut le nom du champ réservé particulier nécessaire pour le type de format en sortie particulier, ainsi que le champ de zone spécifié. Si le champ spécifié a le même nom que le champ réservé pour le format en sortie particulier, le nom du champ de zone dans la sortie est modifié de façon à ce que tous les noms de champs dans le résultat soient uniques.
Remarque :Pour créer un champ de valeurs uniques qui n'a pas de nom réservé, utilisez les outils de géotraitement Ajouter un champ et Calculer un champ.
-
Dans la table en sortie, le champ de valeur précède toujours les champs qui contiennent les calculs zonaux en sortie. Le champ de valeur contient les valeurs des zones définies par le jeu de données de zone.
-
Les valeurs pour les calculs zonaux sont à virgule flottante.
-
Outre l'élément ORIENTATION, tous les résultats dans la table en sortie sont présentés dans les unités de carte. Les valeurs de l'élément ORIENTATION sont mesurées en degrés, avec une plage pouvant aller de 0 à 180. L'ORIENTATION est définie sous forme d'un angle entre l'axe des x et le grand axe de l'ellipse. Les valeurs de l'angle d'orientation augmentent dans le sens antihoraire, en commençant par 0 à l'est (horizontal, à droite) et vont jusqu'à 90 lorsque le grand axe est vertical.
Si une zone particulière se compose d'une seule cellule ou d'un seul bloc carré de cellules, l'orientation de l'ellipse (qui est un cercle dans ce cas) est définie sur 90 degrés.
Syntaxe
Paramètre | Explication | Type de données |
in_zone_data |
Jeu de données définissant les zones. Les zones peuvent être définies par un raster d'entiers ou une couche d'entités. | Raster Layer | Feature Layer |
zone_field | Champ contenant les valeurs qui définissent chaque zone. Ce doit être un champ de type entier du jeu de données de zones. | Field |
out_table |
Table en sortie récapitulant les valeurs de chaque zone. Le format de la table est déterminé par l'emplacement et le chemin d'accès en sortie. Si aucune extension n'est spécifiée, il s'agira d'une table INFO. Si l'emplacement est dans une géodatabase, la table en sortie sera créée dans ce type particulier (par exemple, une géodatabase fichier ou ArcSDE). Si le nom possède une extension .dbf, la sortie sera au format dBASE. | Table |
processing_cell_size (Facultatif) | Taille de cellule de traitement pour l'opération zonale. Il s'agit de la valeur contenue dans l'environnement, si spécifiquement définie. Si l'environnement n'est pas défini, la valeur par défaut de la taille de cellule est déterminée par le type des données de zone, comme suit :
| Analysis Cell Size |
Exemple de code
Cet exemple détermine les mesures de géométrie pour chaque zone définie par le fichier de formes surfaciques en entrée.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)
Cet exemple détermine les mesures de géométrie pour chaque zone définie par le fichier de formes surfaciques en entrée.
# Name: ZonalGeometryAsTable_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry
# measure (area, perimeter, thickness, or the characteristics
# of ellipse) and reports the results as a table.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inZoneData = "zones.shp"
zoneField = "Classes"
outTable = "zonalgeomout02.dbf"
processingCellSize = 0.2
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ZonalGeometryAsTable
outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA", cellSize)