ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Tabuler l'intersection

  • Résumé
  • Illustration
  • Utilisation
  • Syntaxe
  • Exemple de code
  • Environnements
  • Informations de licence

Résumé

Calcule l'intersection entre deux classes d'entités et calcule les superficies croisées de la surface, la longueur ou le total des entités d'intersection.

Illustration

Illustration de l'outil Tabulate Intersection

Utilisation

  • Une zone désigne toutes les entités du paramètre Entités de zone en entrée qui ont les mêmes valeurs dans Champ de zone. De même, une classe comprend toutes les entités du paramètre Entités de classe en entrée qui ont les mêmes valeurs dans Champ de classement. Les entités n'ont pas à être contiguës pour se trouver dans la même zone ou classe. Cet outil permet de calculer la portion de la zone qui est intersectée par chaque classe (surface et pourcentage de surface de zone).

  • Si aucune option Champ de classement n'est spécifiée, toutes les entités du paramètre Input Class Features sont considérées comme une classe unique. Le paramètre Table en sortie contient un enregistrement pour chaque zone.

  • Si une option Champ de classement est spécifiée, le paramètre Table en sortie contient n enregistrements pour chaque zone, n représentant le nombre de classes dans cette zone. Par exemple, si une zone contient quatre classes, le paramètre Table en sortie compte quatre enregistrements pour cette zone.

  • Les attributs numériques de l'option Input Class Features peuvent être additionnés par zone à l'aide du paramètre Sum Fields. La somme des valeurs d'une classe représente une proportion de la somme des valeurs en fonction du pourcentage de la classe qui présente une intersection avec la zone (semblable au fonctionnement d'une Règle de division).

    Attention :

    Seuls les champs contenant des valeurs absolues (et non des valeurs relatives normalisées, telles que des pourcentages ou des densités) doivent être utilisés en tant que Champs de somme, car les valeurs peuvent être fractionnées et réparties dans différentes zones.

  • Vous ne pouvez pas utiliser des Entités de classe en entrée dont les dimensions sont supérieures à celles des Entités de zone en entrée. Combinaisons non prises en charge :

    • Zone = Points, Classe = Polygones ou Lignes
    • Zone = Lignes, Classe = Polygones

  • Lorsque les Entités de zone en entrée et les Entités de classe en entrée sont des polygones, les statistiques de la table en sortie sont basées sur les calculs de la surface.

    Lorsque les Entités de classe en entrée sont des lignes, les statistiques de la table en sortie sont basées sur des calculs linéaires.

    Lorsque les Entités de classe en entrée sont des points, les statistiques de la table en sortie sont basées sur le nombre d'entités.

  • Lorsque les Entités de zone en entrée et les Entités de classe en entrée présentent une dimension identique (deux polygones, deux lignes ou deux points), le champ PERCENTAGE en sortie enregistre le pourcentage de l'entité de zone qui est intersectée par la classe.

    Si les Entités de zone en entrée et les Entités de classe en entrée présentent différentes dimensions (zone de polygone avec classe linéaire, zone de polygone avec classe de points ou zone de ligne avec une classe de points), le champ PERCENTAGE en sortie enregistre le pourcentage de la classe qui intersecte le polygone de zone.

    Le champ PERCENTAGE peut enregistrer une valeur de pourcentage supérieure à 100 pour cent en présence d'entités superposées dans les Entités de zone en entrée ou les Entités de classe en entrée.

  • Le champ AREA est inclus dans la table en sortie uniquement lorsque les Entités de zone en entrée et les Entités de classe en entrée sont des polygones. Le champ AREA contient la surface des Entités de zone en entrée intersectées par les Entités de classe en entrée.

    Le champ LENGTH est compris dans la table en sortie lorsque les Entités de classe en entrée sont des lignes. Le champ LENGTH contient la longueur de l'intersection entre les Entités de zone en entrée et les Entités de classe en entrée.

    Un champ PNT_COUNT est compris dans la table en sortie lorsque les Entités de classe en entrée sont des points. Le champ PNT_COUNT contient le nombre de points d'Entités de classe en entrée qui intersectent les Entités de zone en entrée.

  • Lors de l'utilisation de couches d'entités, si des entités sont sélectionnées, seules les entités sélectionnées sont utilisées dans les calculs.

  • La détermination de l'intersection des entités de classe et de zone se fait d'après les mêmes règles que l'outil Intersecter.

  • Utilisez l'outil Table croisée pour transformer le paramètre Table en sortie en une table qui contient un enregistrement pour chaque zone avec les attributs de classe comme champs attributaires distincts. Renseignez les paramètres de l'outil Table croisée comme suit :

    • Table en entrée - Table en sortie Tabuler l'intersection
    • Champ(s) en entrée - Champ(s) de zone Tabuler l'intersection
    • Champ de croisement - Champ de classe Tabuler l'intersection
    • Champ de valeurs - Champ de somme Tabuler l'intersection ou AREA, LENGTH, PERCENTAGE
    Exemple de Table croisée en sortie

Syntaxe

TabulateIntersection_analysis (in_zone_features, zone_fields, in_class_features, out_table, {class_fields}, {sum_fields}, {xy_tolerance}, {out_units})
ParamètreExplicationType de données
in_zone_features

Entités permettant d'identifier des zones.

Feature Layer
zone_fields
[zone_fields,...]

Le ou les champs attributaires utilisés pour définir les zones.

Field
in_class_features

Entités permettant d'identifier des classes.

Feature Layer
out_table

Table contenant le tableau à double entrées d'intersections entre zones et classes.

Table
class_fields
[class_fields,...]
(Facultatif)

Le ou les champs attributaires utilisés pour définir les classes.

Field
sum_fields
[sum_fields,...]
(Facultatif)

Champs à additionner à partir des Entités de classe en entrée.

Field
xy_tolerance
(Facultatif)

Distance qui détermine la plage dans laquelle les entités ou leurs sommets sont considérés comme identiques. Par défaut, il s'agit de la tolérance XY de l'option Entités de zone en entrée.

Linear Unit
out_units
(Facultatif)

Unités à utiliser pour calculer la surface ou la longueur. Il est impossible de définir les Unités en sortie lorsque les Entités de classe en entrée sont des points.

String

Exemple de code

1er exemple d'utilisation de l'outil TabulateIntersection (fenêtre Python)

Utilisation de l'outil TabulateIntersection dans la fenêtre Python pour trouver la surface de chaque type de végétation dans chaque zone.

import arcpy
arcpy.TabulateIntersection_analysis("Zones", "zone_id", "Vegetation", r"C:\Esri\veganalysis.gdb\vegtypeAreas", "VEGTYPE")
2e exemple d'utilisation de l'outil TabulateIntersection (script autonome)

Script qui encapsule l'outil TabulateIntersection afin de créer un outil de script TabulateArea simple. L'outil de script TabulateArea utilise seulement des entités surfaciques en entrée.Les champs Zone et Classe sont limités à un seul.

'''
TabulateArea.py
Description: Shows how to wrap the TabulateIntersection tool to create a TabulateArea script tool
Requirements: Polygon Zone Feature Class, Polygon Class Feature Class

'''
import arcpy
import sys
import os

def AddMsgAndPrint(msg, severity=0):
    # Adds a Message (in case this is run as a tool)
    # and also prints the message to the screen (standard output)
    # 
    print(msg)

    # Split the message on \n first, so that if it's multiple lines, 
    #  a GPMessage will be added for each line
    try:
        for string in msg.split('\n'):
            # Add appropriate geoprocessing message 
            #
            if severity == 0:
                arcpy.AddMessage(string)
            elif severity == 1:
                arcpy.AddWarning(string)
            elif severity == 2:
                arcpy.AddError(string)
    except:
        pass

## Get Parameters
zoneFC = arcpy.GetParameterAsText(0)
zoneFld = arcpy.GetParameterAsText(1) # Only allow one field
classFC = arcpy.GetParameterAsText(2)
outTab = arcpy.GetParameterAsText(3)
classFld = arcpy.GetParameterAsText(4) # Optional and only allow one field
sum_Fields = ""
xy_tol = ""
outUnits = arcpy.GetParameterAsText(5)

## Validate parameters
# Inputs can only be polygons
zoneDesc = arcpy.Describe(zoneFC)
classDesc = arcpy.Describe(classFC)
if zoneDesc.shapeType != "Polygon" or classDesc.shapeType != "Polygon":
    AddMsgAndPrint("Inputs must be of type polygon.", 2)
    sys.exit()
    
# Only one zone field and class field
if zoneFld != "":
    if zoneFld.find(";") > -1 or classFld.find(";") > -1:
        AddMsgAndPrint("A maximum of one zone and/or class field is allowed.", 2)
        sys.exit()

## Run TI with restricted parameters
try:
    arcpy.TabulateIntersection_analysis(zoneFC, zoneFld, classFC, outTab, classFld, sum_Fields, xy_tol, outUnits)
except:
    arcpy.AddMessage("Tabulate Intersection Failed.")
AddMsgAndPrint(arcpy.GetMessages(), 0)

Environnements

  • Validation automatique
  • Mot-clé de configuration en sortie
  • Domaine XY en sortie
  • Système de coordonnées en sortie
  • Etendue
  • Noms de champ qualifiés
  • Espace de travail temporaire
  • Résolution XY
  • Tolérance XY

Informations de licence

  • ArcGIS Desktop Basic: Non
  • ArcGIS Desktop Standard: Non
  • ArcGIS Desktop Advanced: Oui

Rubriques connexes

  • Vue d'ensemble du jeu d'outils Statistiques

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2019 Esri. | Confidentialité | Légal