Polygones voisins (Analyse)

Synthèse

Crée une table avec des statistiques basées sur la contiguïté des polygones (superpositions, tronçons coïncidents ou nœuds).

En savoir plus sur le fonctionnement de l’outil Voisinage du polygone

Illustration

Exemple d’outil Voisinage du polygone
Un diagramme d’un polygone source et de ses polygones voisins est présenté.

Utilisation

  • L’outil analyse la continuité du polygone, en récapitulant les aspects suivants entre les polygones source et les polygones voisins :

    • la surface de superposition (voisins superposés - en option)
    • la longueur des tronçons coïncidents (voisins au nœud)
    • le nombre de fois pendant lesquelles des limites se croisent ou se touchent en un point (voisin au nœud)
    Les informations récapitulatives sont consignées dans une table en sortie. Un polygone source peut avoir un ou plusieurs polygones voisins. Un polygone voisin est spatialement associé au polygone source d’au moins une des façons décrites ci-dessus.

  • Seule la contiguïté de premier ordre est analysée et signalée par l’outil. Les relations allant au-delà ne sont pas examinées. En d’autres termes, les voisins des voisins (contiguïté de second ordre) ne sont pas examinés.

  • Le paramètre Signaler par champ(s) (in_fields dans Python) permet d’identifier des polygones uniques ou des groupes de polygones et de communiquer leurs informations de voisinage par polygone unique ou groupes de polygones. Pour trouver les voisins de chaque polygone dans l’entrée, indiquez un ou plusieurs champs en entrée produisant une valeur unique ou un ensemble de valeurs (si vous utilisez plusieurs champs) pour chaque polygone.

    Si les champs spécifiés identifient des groupes de polygones uniques, les informations sur le voisinage sont récapitulées et signalées par les groupes.

    Reportez-vous à la rubrique Fonctionnement de l’outil Voisinage du polygone pour savoir comment utiliser ce paramètre.

  • Vous pouvez utiliser le paramètre Inclure les superpositions de zone pour analyser les relations de superposition de zone. Lorsque vous sélectionnez l’option Inclure les superpositions de zone, la table en sortie contient un champ AREA qui stocke la surface de superposition du voisin superposé en cours d’analyse. En l’absence de superposition, le champ AREA a pour valeur 0.

    Conseil :

    Le calcul de relations de superposition de surfaces est une opération sollicitant beaucoup de ressources, et les performances risquent d’être bien plus lentes que si vous déterminiez les relations de voisinage au nœud et au tronçon coïncident. Si vous savez que vos données ne présentent aucune entité superposée ou si vous ne souhaitez pas analyser les voisins superposés, assurez-vous que le paramètre Inclure les superpositions de zone n’est pas coché (area_overlap = "NO_AREA_OVERLAP" dans Python).

    Attention :

    Le paramètre Inclure les superpositions de zone doit être coché (area_overlap = "AREA_OVERLAP" dans Python) en vue de l’obtention des enregistrements des voisins figurant entièrement dans un polygone source. Si vous ne cochez pas le paramètre Inclure les superpositions de zone, la table en sortie ne contient pas les enregistrements des voisins figurant entièrement dans un polygone source.

  • Il n'y a aucune entrée dans la table en sortie pour les entités non voisines.

  • Le paramètre Inclure les deux côtés de la relation voisine est utilisé pour contrôler les relations incluses dans la sortie. Pour signaler toutes les relations de contiguïté, y compris les relations réciproques, activez la case à cocher Inclure les deux côtés de la relation voisine (both_sides = "BOTH_SIDES" dans Python). Par exemple, si OID1 est un voisin d’OID2, une entrée est ajoutée dans la table en sortie pour OID1 ayant pour voisin OID2, et pour OID2 ayant pour voisin OID1. Si vous ne désirez que le premier côté de la relation, décochez le paramètre Inclure les deux côtés de la relation voisine. Toujours avec cet exemple, si l’option Inclure les deux côtés de la relation voisine est désactivée, seule l’entrée relative à OID1 ayant pour voisin OID2 sera consignée dans la table en sortie.

  • L’option Unités linéaires en sortie spécifie les unités allant être utilisées pour la longueur de limite mitoyenne entre voisins. Par défaut, les unités utilisées sont les mêmes que celles définies par le système de coordonnées d'entités en entrée.

  • L’option Unités de surface en sortie n’est utilisée que lorsque le paramètre Inclure les superpositions de zone est sélectionné (area_overlap = "AREA_OVERLAP" dans Python). Lorsque le paramètre Inclure les superpositions de zone est activé, les unités utilisées pour calculer la superposition de surfaces des voisins sont spécifiées dans le paramètre Unités de surface en sortie. Par défaut, les unités utilisées sont les mêmes que celles définies par le système de coordonnées de l'entité en entrée.

  • La valeur du paramètre Table en sortie peut être une table de géodatabase fichier ou une table .dbf.

  • Pour chaque champ spécifié dans le paramètre Signaler par champ(s), la table en sortie contient deux champs utilisant la convention de nom suivante : src_<field> et nbr_<field>. Les champs représentent les valeurs des champs source et voisins de l’entrée.

    La table en sortie contient également les champs suivants :

    • AREA- Ce champ stocke la surface totale superposée entre un polygone source et un polygone voisin (voisins superposés). Ce champ n’est inclus dans la table en sortie que si le paramètre Inclure les superpositions de zone est coché (area_overlap = "AREA_OVERLAP" dans Python).
    • LENGTH- Ce champ stocke la longueur totale des tronçons coïncidents entre un polygone source et un polygone voisin.
    • NODE_COUNT- Ce champ stocke le nombre de croisements ou de contacts en un point entre un polygone source et un polygone voisin.

  • Si une sélection est définie sur les entités en entrée, seules les entités sélectionnées sont analysées.

Paramètres

ÉtiquetteExplicationType de données
Entités en entrée

Entités surfaciques en entrée.

Feature Layer
Table en sortie

Table en sortie.

Table
Signaler par champ(s)
(Facultatif)

Le ou les champs attributaires en entrée allant être utilisés pour identifier des polygones uniques ou des groupes de polygones et les représenter dans la sortie.

Field
Inclure les superpositions de zone
(Facultatif)

Spécifie si les relations de zones superposées seront analysées et incluses dans la sortie.

  • Désactivé - Les relations de superposition ne sont ni analysées, ni incluses dans la sortie. Il s’agit de l’option par défaut.
  • Activé - Les relations de superposition sont analysées et incluses dans la sortie.

Boolean
Inclure les deux côtés de la relation voisine
(Facultatif)

Spécifie si les deux côtés des relations de voisinage sont incluses dans la sortie.

  • Activé - En présence d’une paire de polygones voisins, les informations identifiant le premier polygone comme étant la source et le second comme étant le voisin sont incluses, et vice-versa. Il s’agit de l’option par défaut.
  • Désactivé - En présence d’une paire de polygones voisins, seules les informations identifiant le premier polygone comme étant la source et le second comme étant le voisin sont incluses. La relation réciproque n’est pas incluse.

Boolean
Tolérance XY
(Facultatif)

Distance minimale entre des coordonnées avant qu’elles ne soient considérées comme identiques. Par défaut, il s’agit de la tolérance x,y des entités en entrée.

Attention :

Modifier la valeur de ce paramètre peut provoquer des erreurs ou des résultats inattendus. Il est recommandé de ne pas modifier ce paramètre. Ce paramètre n’est plus affiché dans la boîte de dialogue de l’outil. Par défaut, la propriété tolérance x,y de référence spatiale de la classe d'entités en entrée est utilisée.

Linear Unit
Unités linéaires en sortie
(Facultatif)

Spécifie les unités allant être utilisées pour signaler la longueur totale du tronçon coïncident entre des polygones voisins. Par défaut, il s'agit des unités des entités en entrée.

  • InconnuLes unités ne sont pas connues.
  • PoucesLes unités sont les pouces.
  • PiedsL’unité sera le pied.
  • YardsLes unités sont les yards.
  • MillesL'unité sera le mile.
  • Milles nautiquesL’unité sera le mille nautique.
  • MillimètresLes unités sont les millimètres.
  • CentimètresLes unités sont les centimètres.
  • DécimètresLes unités sont les décimètres.
  • MètresL’unité sera le mètre.
  • KilomètresL’unité sera le kilomètre
  • Degrés décimauxL’unité sera le degré décimal.
  • PointsLes unités sont les points.
String
Unités de zone en sortie
(Facultatif)

Spécifie les unités allant être utilisées pour signaler la superposition de zone des polygones voisins. Par défaut, il s'agit des unités des entités en entrée. Ce paramètre n’est actif que si vous activez le paramètre Inclure les superpositions de zone.

  • InconnuLes unités ne sont pas connues.
  • AresLes unités sont les ares.
  • AcresLes unités sont les acres.
  • HectaresLes unités sont les hectares.
  • Pouces carrésLes unités sont les pouces carrés.
  • Pieds carrésLes unités sont les pieds carrés.
  • Yards carrésLes unités sont les yards carrés.
  • Miles carrésLes unités sont les miles carrés.
  • Millimètres carrésLes unités sont les millimètres carrés.
  • Centimètres carrésLes unités sont les centimètres carrés.
  • Décimètres carrésLes unités sont les décimètres carrés.
  • Mètres carrésLes unités sont les mètres carrés.
  • Kilomètres carrésLes unités sont les kilomètres carrés.
String

arcpy.analysis.PolygonNeighbors(in_features, out_table, {in_fields}, {area_overlap}, {both_sides}, {cluster_tolerance}, {out_linear_units}, {out_area_units})
NomExplicationType de données
in_features

Entités surfaciques en entrée.

Feature Layer
out_table

Table en sortie.

Table
in_fields
[field,...]
(Facultatif)

Le ou les champs attributaires en entrée allant être utilisés pour identifier des polygones uniques ou des groupes de polygones et les représenter dans la sortie.

Field
area_overlap
(Facultatif)

Spécifie si les relations superposées seront analysées et incluses dans la sortie.

  • NO_AREA_OVERLAPLes relations de superposition ne sont ni analysées, ni incluses dans la sortie. Il s’agit de l’option par défaut.
  • AREA_OVERLAPLes relations de superposition sont analysées et incluses dans la sortie.
Boolean
both_sides
(Facultatif)

Spécifie si les deux côtés des relations de voisinage sont incluses dans la sortie.

  • BOTH_SIDESEn présence d’une paire de polygones voisins, les informations identifiant le premier polygone comme étant la source et le second comme étant le voisin sont incluses, et vice-versa. Il s’agit de l’option par défaut.
  • NO_BOTH_SIDESEn présence d’une paire de polygones voisins, seules les informations identifiant le premier polygone comme étant la source et le second comme étant le voisin sont incluses. La relation réciproque n’est pas incluse.
Boolean
cluster_tolerance
(Facultatif)

Distance minimale entre des coordonnées avant qu’elles ne soient considérées comme identiques. Par défaut, il s’agit de la tolérance x,y des entités en entrée.

Attention :

Modifier la valeur de ce paramètre peut provoquer des erreurs ou des résultats inattendus. Il est recommandé de ne pas modifier ce paramètre. Ce paramètre n’est plus affiché dans la boîte de dialogue de l’outil. Par défaut, la propriété tolérance x,y de référence spatiale de la classe d'entités en entrée est utilisée.

Linear Unit
out_linear_units
(Facultatif)

Spécifie les unités allant être utilisées pour signaler la longueur totale du tronçon coïncident entre des polygones voisins. Par défaut, il s'agit des unités des entités en entrée.

  • UNKNOWNLes unités ne sont pas connues.
  • INCHESLes unités sont les pouces.
  • FEETL’unité sera le pied.
  • YARDSLes unités sont les yards.
  • MILESL'unité sera le mile.
  • NAUTICAL_MILESL’unité sera le mille nautique.
  • MILLIMETERSLes unités sont les millimètres.
  • CENTIMETERSLes unités sont les centimètres.
  • DECIMETERSLes unités sont les décimètres.
  • METERSL’unité sera le mètre.
  • KILOMETERSL’unité sera le kilomètre
  • DECIMAL_DEGREESL’unité sera le degré décimal.
  • POINTSLes unités sont les points.
String
out_area_units
(Facultatif)

Spécifie les unités allant être utilisées pour signaler la superposition de zone des polygones voisins. Par défaut, il s'agit des unités des entités en entrée. Ce paramètre n’est activé que lorsque le paramètre area_overlap est défini sur AREA_OVERLAP.

  • UNKNOWNLes unités ne sont pas connues.
  • ARESLes unités sont les ares.
  • ACRESLes unités sont les acres.
  • HECTARESLes unités sont les hectares.
  • SQUARE_INCHESLes unités sont les pouces carrés.
  • SQUARE_FEETLes unités sont les pieds carrés.
  • SQUARE_YARDSLes unités sont les yards carrés.
  • SQUARE_MILESLes unités sont les miles carrés.
  • SQUARE_MILLIMETERSLes unités sont les millimètres carrés.
  • SQUARE_CENTIMETERSLes unités sont les centimètres carrés.
  • SQUARE_DECIMETERSLes unités sont les décimètres carrés.
  • SQUARE_METERSLes unités sont les mètres carrés.
  • SQUARE_KILOMETERSLes unités sont les kilomètres carrés.
String

Exemple de code

Exemple d'utilisation de l'outil PolygonNeighbors (fenêtre Python)

Recherchez tous les voisins des districts électoraux dans la province de Nouvelle-Écosse.

import arcpy

arcpy.MakeFeatureLayer_management(r"C:\Data\Canada\CanadaElecDist.shp", 
                                  "Canada_ElectoralDist")

arcpy.SelectLayerByAttribute_management("Canada_ElectoralDist", "NEW_SELECTION", 
                                        "\"PROVCODE\" = 'NS'")
count = arcpy.GetCount_management("Canada_ElectoralDist")[0]
print("Selected feature count: {}".format(count))

arcpy.PolygonNeighbors_analysis("Canada_ElectoralDist", 
                                r"C:\Data\Output\NS_elec_neigh.dbf", "ENNAME")
print(arcpy.GetMessages())

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes