Joindre les entités (GeoAnalytics Desktop)

Synthèse

Joint les attributs d’une couche à une autre en fonction de relations spatiales, temporelles ou attributaires ou d’une combinaison de ces relations.

Illustration

Présentation de l’outil Join Features (Joindre les entités)
Les deux exemples de l’outil Joins Features (Joindre les entités) illustrent une jointure spatio-temporelle.

Utilisation

  • Une jointure spatiale permet d’apparier des entités (lignes) à partir des entités en entrée (les valeurs de paramètre Target Layer (Couche cible) et Join Layer (Couche de jointure)) en fonction de leurs localisations géographiques. Une jointure temporelle permet d’apparier des entités (lignes) à partir des entités en entrée en fonction de leurs relations temporelles. Une jointure attributaire permet d’apparier des entités en fonction des valeurs de champs.

  • Vous pouvez joindre des entités selon une relation spatiale, temporelle ou attributaire, ou une combinaison des trois.

    OptionDescription

    Relation spatiale

    Relation spatiale qui va déterminer si les entités sont jointes les unes aux autres. Les relations disponibles dépendent du type de géométrie (point, ligne ou surface) des couches jointes. Les relations spatiales disponibles sont les suivantes :

    • Intersecte
    • Est égal à
    • Planar Near (Planaire à proximité) : utilise les distances planaires
    • Geodesic Near (Géodésique à proximité) : utilise les distances géodésiques.
    • Contient
    • Dans
    • Touche
    • Croise
    • Superpose

    En savoir plus sur les relations spatiales dans les outils de GeoAnalytics Desktop

    Relation temporelle

    Relation temporelle qui va déterminer si les entités sont jointes les unes aux autres. Les relations disponibles dépendent du type de temps (instant ou intervalle) des couches jointes. Les relations temporelles disponibles sont les suivantes :

    • Rejoint
    • Rejoint par
    • Superpose
    • Superposé par
    • Pendant
    • Contient
    • Est égal à
    • Termine
    • Terminé par
    • Démarre
    • Démarré par
    • Intersecte
    • Proche
    • À proximité avant
    • À proximité après

    En savoir plus sur les relations temporelles dans les outils de GeoAnalytics Desktop

    Relation attributaire

    Relation attributaire qui va déterminer si les entités sont jointes les unes aux autres. Les entités sont appariées lorsque les valeurs de champ de la couche de jointure sont identiques à celles de la couche cible.

  • Si les entités cible et de jointure sont dans des systèmes de coordonnées différents, les systèmes de coordonnées de l’entité cible sont utilisés. Si un système de coordonnées en sortie est spécifié, les deux entités y sont projetées, puis sont jointes.

  • Si la valeur de paramètre Spatial Relationship (Relation spatiale) est Planar Near (Planaire à proximité), la valeur de paramètre Target Layer (Couche cible) doit être projetée ou le système de coordonnées en sortie doit être défini sur un système de coordonnées projetées.

  • Si plusieurs entités correspondent à la même entité cible, vous pouvez choisir de joindre toutes les entités appariées (une valeur Join Operation (Opération de jointure) définie sur Join one to many (Joindre un vers plusieurs)) ou de synthétiser toutes les entités appariées ensemble (valeur Join Operation (Opération de jointure) définie sur Join one to one (Joindre un vers un)) comme suit :

    • Join one to many (Joindre un vers plusieurs) : joint toutes les entités appariées de la couche de jointure à la couche cible. La couche de résultat contiendra plusieurs enregistrements de l’entité cible.
    • Join one to one (Joindre un vers un) : permet de synthétiser toutes les entités de jointure appariées sur chaque entité de la couche cible. Seules les entités appariées seront incluses dans la synthèse et la sortie. Le nombre d’entités jointes sera ajouté, en plus d’autres statistiques, telles que somme, minimum, maximum, plage, moyenne, variance et écart type. Par défaut, seules les entités cibles ayant la relation spécifiée sont conservées dans la classe d’entités en sortie (il s’agit d’une jointure interne). Si l’option Keep All Target Features (Conserver toutes les entités cibles) est activée, toutes les entités cibles en entrée seront écrites dans la classe d’entités en sortie (il s’agit d’une jointure externe gauche).
    Exemples de jointure un vers plusieurs et un vers un
    Des exemples de jointure un vers plusieurs et un vers un sont présentés. Dans cet exemple, la jointure un vers un ne comprend que le total. Les statistiques supplémentaires pouvant être calculées sont indiquées ci-dessous.

  • Vous pouvez créer une expression pour joindre des entités à l’aide du paramètre Join Condition (Condition de jointure). Si vous spécifiez une expression, seules les entités qui remplissent la condition sont utilisées. Par exemple, à l’aide de l’expression $target["Magnitude"] > $join["Explosion"], vous ne pouvez joindre des entités cibles à partir du champ Magnitude que si la valeur est supérieure à l’entité jointe avec un champ nommé Explosion. Reportez-vous à Expressions Arcade dans les outils GeoAnalytics Desktop pour plus d’informations.

  • Les champs suivants sont inclus dans les entités en sortie lors de l’exécution d’une jointure un vers plusieurs :

    • All fields from the target layers (Tous les champs des couches cibles)
    • All fields from the joined layer (Tous les champs de la couche jointe)

    Si un champ porte le même nom dans les deux jeux de données cibles et de jointure, le champ joint commence par le terme « join » (joindre) (join_fieldname, par exemple).

    Nom du champDescription

    start_date

    Ce champ représente l’heure de début et est créé lorsque l’entrée comporte une heure définie comme un instant ou un intervalle.

    end_date

    Ce champ représente l’heure de fin et est créé lorsque l’entrée comporte une heure définie comme un intervalle.

    Outre l’ensemble des champs de la couche cible, les champs suivants sont inclus dans les entités en sortie lors de l’exécution d’une jointure un vers un :

    Nom du champDescription

    count

    Le total d’entités qui ont été jointes.

    statistic_fieldname

    Les statistiques spécifiées créent chacune un champ attributaire, dont le nom se présente au format suivant : statistic_fieldname. Par exemple, l’écart maximal et l’écart type du champ id sont respectivement MAX_id et SD_id.

    start_date

    Ce champ représente l’heure de début et est créé lorsque l’entrée comporte une heure définie comme un instant ou un intervalle.

    end_date

    Ce champ représente l’heure de fin et est créé lorsque l’entrée comporte une heure définie comme un intervalle.

  • Si le paramètre Include Distance (Inclure la distance) est sélectionné et que le paramètre Join Operation (Opération de jointure) est défini sur Join one to many (Joindre un vers plusieurs), les champs suivants peuvent être inclus dans les entités en sortie :

    Nom du champDescription

    distance

    Distance entre les entités cibles et de jointure. Ce champ est inclus si le paramètre Spatial Relationship (Relation spatiale) est Planar Near (Planaire à proximité) ou Geodesic Near (Géodésique à proximité).

    Une distance de 0 indique que les géométries cibles et de jointure se coupent. Une valeur nulle indique que les géométries sont éloignées de la valeur de paramètre Spatial Near Distance (Distance de proximité spatiale). Si la valeur de paramètre Spatial Relationship (Relation spatiale) est Planar Near (Planaire à proximité), les valeurs de distance sont planaires. Si la valeur de paramètre est Geodesic Near (Géodésique à proximité), les valeurs de distance sont géodésiques. Les valeurs sont exprimées dans les unités spécifiées dans le paramètre Distance Unit (Unité de distance). L’unité de distance par défaut est le mètre.

    timegap

    La différence temporelle entre les entités cibles et de jointure est exprimée en millisecondes. Ce champ est inclus si le paramètre Temporal Relationship (Relation temporelle) est Near (Proche), Near Before (Proche avant) ou Near After (Proche après).

    Une différence de 0 indique que les entités cibles et de jointure se coupent d’un point de vue temporel. Des valeurs positives indiquent que l’entité cible se produit avant l’entité de jointure, une valeur négative indiquant que l’entité de jointure se produit avant l’entité cible. Des valeurs nulles indiquent que les entités ne satisfont pas à la condition de jointure. Par exemple, les entités sont éloignées de la valeur de paramètre Temporal Near Distance (Distance de proximité temporelle).

  • Vous pouvez améliorer les performances de l’outil Join Features (Joindre les entités) en effectuant une ou plusieurs des opérations suivantes :

    • Définissez l’environnement de l’étendue de manière à analyser uniquement des données d’intérêt.
    • Faites en sorte que les conditions de jointure soient aussi sélectives que possible. Par exemple, une jointure proche de 1 kilomètre fonctionne mieux qu’une jointure proche de 5 kilomètres pour les mêmes données.
    • Ajoutez plusieurs conditions de jointure. Des conditions de jointure supplémentaires rendent la jointure plus sélective. Par exemple, une jointure proche de 1 kilomètre et de 1 heure fonctionne mieux qu’une jointure proche de 1 kilomètre pour les mêmes données.
    • Appliquez une expression de jonction.
    • Utilisez les données locales de l’environnement de l’analyse.

  • Une analyse similaire peut également être réalisée à l’aide de l’outil Spatial Join (Jointure spatiale) dans la boîte à outils Analysis (Analyse).

  • Cet outil de géotraitement est mis en œuvre par Spark. L’analyse est effectuée sur votre ordinateur de bureau en utilisant plusieurs cœurs en parallèle. Pour en savoir plus sur l’exécution de l’analyse, reportez-vous à la rubrique Remarques relatives aux outils GeoAnalytics Desktop.

  • Lorsque vous exécutez des outils GeoAnalytics Desktop, l’analyse est effectuée sur votre ordinateur de bureau. Pour des performances optimales, les données doivent être accessibles sur votre bureau. Si vous utilisez une couche d’entités hébergée, il est recommandé d'utiliser ArcGIS GeoAnalytics Server. Si vos données ne sont pas enregistrées en local, l’exécution des outils prendra plus de temps. Pour utiliser votre ArcGIS GeoAnalytics Server en vue d'une analyse, reportez-vous à la rubrique GeoAnalytics Tools.

Paramètres

ÉtiquetteExplicationType de données
Couche cible

Contient les entités cibles. Les attributs provenant des entités cibles et les attributs provenant des entités de jointure sont transférés vers la sortie.

Table View
Couche de jointure

Contient les entités de jointure. Les attributs des entités jointes sont joints aux attributs des entités cible. Reportez-vous à l’explication du paramètre Join Operation (Opération de jointure) pour en savoir plus sur les répercussions du type d’opération de jointure sur l’agrégation des attributs joints.

Table View
Jeu de données en sortie

Nouvelle classe d’entités contenant les entités de couche cible avec des entités jointes.

Feature Class;Table
Opération de jointure

Spécifie le mode de traitement des jointures entre les valeurs Target Layer (Couche cible) et les valeurs Join Layer (Couche de jointure) dans la sortie, si plusieurs entités de jointure présentent une relation spatiale identique avec une même entité cible.

  • Joindre un vers unLes attributs provenant de plusieurs entités de jointure sont agrégés. Par exemple, si une entité cible ponctuelle se trouve dans deux entités de jointure surfaciques distinctes, les attributs des deux polygones sont agrégés avant d’être transférés vers la classe d’entités ponctuelle en sortie. Si les polygones ont respectivement les valeurs attributaires 3 et 7, et que la somme des résumés statistiques est spécifiée pour ce champ, la valeur agrégée dans la classe d'entité en sortie est 10. Il s’agit du comportement par défaut et seule la statistique de comptage est renvoyée.
  • Joindre un vers plusieursLa classe d’entités en sortie contient plusieurs exemplaires (enregistrements) de l’entité cible. Par exemple, si une même entité cible ponctuelle figure dans deux entités de jointure surfaciques distinctes, la classe d’entités en sortie contient deux exemplaires de l’entité cible : un enregistrement avec les attributs du premier polygone et un enregistrement avec les attributs du deuxième polygone. Aucun résumé statistique n’est disponible avec cette option.
String
Relation spatiale
(Facultatif)

Définit les critères utilisés pour joindre spatialement les entités.

  • IntersecteLes entités dans les entités de jointure sont appariées si elles intersectent une entité cible. Il s’agit de l’option par défaut.
  • Est égal àLes entités dans les entités de jointure sont appariées si elles possèdent la même géométrie qu'une entité cible.
  • Planaire à proximitéLes entités dans les entités jointes sont appariées si elles se trouvent à une distance spécifiée d'une entité cible. La distance est mesurée à l’aide de la distance planaire. Spécifiez une distance dans le paramètre Spatial Near Distance (Distance de proximité spatiale).
  • Géodésique à proximitéLes entités dans les entités de jointure sont appariées si elles se trouvent à une distance spécifiée d’une entité cible. La distance est mesurée de manière géodésique. Spécifiez une distance dans le paramètre Spatial Near Distance (Distance de proximité spatiale).
  • ContientLes entités des entités jointes sont appariées si une entité cible les englobe. Les entités cible doivent être des polygones ou des polylignes. Les entités de jointure ne peuvent être que des polygones lorsque les entités cible le sont également. Un polygone peut contenir tout type d’entité. Une polyligne peut contenir uniquement des polylignes et des points. Un point ne peut pas contenir d’entité, pas même un point. Si l'entité de jointure se trouve entièrement sur la limite de l'entité cible (aucune partie n'est véritablement à l'intérieur ni à l'extérieur), l'entité n'est pas appariée.
  • DansLes entités des entités jointes sont appariées si une entité cible se trouve à l'intérieur d'elles. C’est l’inverse de la relation Contient. Les entités cibles ne peuvent être que des polygones lorsque les entités de jointure le sont également. Un point ne peut être une entité de jointure que s’il est également une entité cible. Si la totalité de l'entité dans les entités de jointure est sur la limite de l'entité cible, l'entité n'est pas appariée.
  • ToucheLes entités dans les entités jointes sont appariées si elles comportent une limite qui touche une entité cible. Lorsque les entités de jointure et les entités cibles sont des lignes ou des polygones, la limite de l’entité de jointure ne peut toucher que la limite de l’entité cible et aucune partie de l’entité de jointure ne peut dépasser la limite de l’entité cible.
  • CroiseLes entités dans les entités jointes sont appariées si une entité cible est intersectée par leur contour. Les entités jointe et cible doivent être des lignes ou des polygones. Si des polygones sont utilisés pour les entités jointe et cible, la limite (ligne) du polygone est utilisée. Les lignes qui se croisent au niveau d’un point sont appariées, à l’inverse de celles qui partagent un segment de ligne.
  • SuperposeLes entités figurant dans les entités de jointure sont appariées si elles recouvrent une entité cible.
String
Distance de proximité spatiale
(Facultatif)

Distance à partir d’une entité cible dans laquelle les entités de jointure sont prises en compte pour la jointure spatiale. Un rayon de recherche est uniquement valide si la valeur de paramètre Spatial Relationship (Relation spatiale) est Planar Near (Planaire à proximité) ou Geodesic Near (Géodésique à proximité).

Linear Unit
Relation temporelle
(Facultatif)

Définit les critères temporels utilisés pour l’appariement des entités.

  • RejointLorsque la fin d'un intervalle temporel cible est égale au début de l'intervalle temporel de jointure, les données temporelles cible rejoignent les données temporelles de jointure.
  • Rejoint parLorsque le début d'un intervalle temporel cible est égal à la fin de l'intervalle temporel de jointure, les données temporelles cible sont rejointes par les données temporelles de jointure.
  • SuperposeLorsqu'un intervalle temporel cible commence et se termine avant le début et la fin de l'intervalle temporel de jointure, les données temporelles cible recouvrent les données temporelles de jointure.
  • Superposé parLorsqu'un intervalle temporel cible commence et se termine après l'heure de début et l'heure de fin de l'intervalle temporel de jointure, les données temporelles cible sont recouvertes par les données temporelles de jointure.
  • PendantLorsque des données temporelles cible interviennent entre le début et la fin de l'intervalle temporel de jointure, les données temporelles cible se situent pendant les données temporelles de jointure.
  • ContientLorsque les données temporelles d'une entité de jointure interviennent entre le début et la fin de l'intervalle temporel cible, les données temporelles cible contiennent les données temporelles de jointure.
  • Est égal àDes données temporelles sont considérées égales si leurs instants ou intervalles sont identiques.
  • TermineLorsque des données temporelles cible se terminent au même moment que des données temporelles de jointure, et que les données temporelles cible ont commencé après celles de jointure, les données temporelles cible terminent les données temporelles de jointure.
  • Terminé parLorsque les données temporelles d'une entité de jointure se terminent au même moment que les données temporelles cible, et que les données temporelles de jointure ont commencé après les données temporelles cible, les données temporelles cible sont terminées par les données temporelles de jointure.
  • DémarreLorsque des données temporelles cibles commencent au même moment que l’intervalle temporel de jointure et se terminent avant la fin de l’intervalle temporel de jointure, les données temporelles cibles démarrent les données temporelles de jointure.
  • Démarré parLorsqu'un intervalle temporel cible commence au même moment que les données temporelles de jointure, et se terminent après les données temporelles de jointure, les données temporelles cible sont démarrées par les données temporelles de jointure.
  • IntersecteLorsqu'une partie quelconque de données temporelles cible intervient au même moment que les données temporelles de jointure, les données temporelles cible intersectent les données temporelles de jointure.
  • ProcheLorsque des données temporelles cible sont comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cible sont proches des données temporelles de jointure.
  • Near before (À proximité avant)Lorsque des données temporelles cibles sont avant les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches avant les données temporelles de jointure.
  • Near after (À proximité après)Lorsque des données temporelles cibles sont après les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches après les données temporelles de jointure.
String
Distance de proximité temporelle
(Facultatif)

Distance dans les données temporelles à partir d’une entité cible dans laquelle les entités de jointure sont prises en compte pour la jointure spatiale. Des données temporelles sont uniquement valides lorsque la valeur de paramètre Temporal Relationship (Relation temporelle) est Near (Proche), Near Before (Proche avant) ou Near After (Proche après) et que les deux entités sont temporelles.

Time Unit
Relation attributaire
(Facultatif)

Joint des entités en fonction des valeurs d'un champ attributaire. Spécifiez le champ attributaire de la couche cible qui correspond à un champ attributaire de la couche de jointure.

  • Champ cible - Champ d'attribut de la couche cible contenant les valeurs à apparier.
  • Champ de jointure - Champ d'attribut de la couche de jointure contenant les valeurs à apparier.

Value Table
Champs de récapitulation
(Facultatif)

Statistiques qui seront calculées sur les champs spécifiés.

Value Table
Condition de jointure
(Facultatif)

Applique une condition à des champs spécifiés. Seules les entités présentant des champs qui remplissent ces conditions sont jointes.

Par exemple, vous pouvez appliquer une condition de jointure à des entités dans lesquelles l’attribut HealthSpending de la couche de jointure est supérieur à 20 % de l’attribut Income de la couche cible. Utilisez une expression Arcade telle que $join["HealthSpending"] > $target["Income"] * .2.

String
Conserver toutes les entités cible
(Facultatif)

Indique si toutes les entités cibles sont conservées dans la classe d’entités en sortie (jointure externe gauche) ou uniquement celles qui présentent la relation spécifiée avec les entités jointes (jointure interne).

  • Activé - Toutes les entités cibles sont conservées dans la sortie.
  • Désactivé – Seules les entités cibles ayant les relations spécifiées sont conservées dans la classe d’entités en sortie. Les entités ponctuelles qui ne se trouvent pas dans les entités surfaciques sont exclues de la sortie. Il s’agit de l’option par défaut.

Boolean
Inclure la distance
(Facultatif)

Spécifie si la distance spatiale ou la différence temporelle est incluse dans le résultat.

Ce paramètre est actif lorsque la valeur de paramètre Join Operation (Opération de jointure) est Join one to many (Joindre un vers plusieurs) et que l’un des éléments suivants est vrai :

  • La valeur de paramètre Spatial Relationship (Relation spatiale) est Planar Near (Planaire de proximité) ou Geodesic Near (Géodésique de proximité).
  • La valeur de paramètre Temporal Relationship (Relation temporelle) est Near (Proche), Near Before (Proche avant) ou Near After (Proche après).
.
  • Activé - La distance spatiale ou la différence temporelle est incluse dans le résultat.
  • Désactivé - La distance spatiale et la différence temporelle ne sont pas incluses dans le résultat. Il s’agit de l’option par défaut.

Boolean
Unité de distance
(Facultatif)

Spécifie l’unité de mesure qui sera utilisée pour les valeurs de distance dans la classe d’entités en sortie.

  • MètresL’unité de mesure est le mètre. Il s’agit de l’option par défaut.
  • KilomètresL’unité de mesure est le kilomètre.
  • Milles d’arpentage américainsL’unité de mesure est le mille d’arpentage américain.
  • Milles nautiques d’arpentage américainsL’unité de mesure est le mille nautique d’arpentage américain.
  • Yards d'arpentage américainsL’unité de mesure est le yard d'arpentage américain
  • Pieds d’arpentage américainsL’unité de mesure est le pied d’arpentage américain
  • Milles terrestresL’unité de mesure est le mille terrestre.
  • Milles nautiques internationauxL’unité de mesure est le mille nautique international.
  • Yards internationauxL’unité de mesure est le yard international.
  • Pied internationalL’unité de mesure est le pied international.
String

arcpy.geoanalytics.JoinFeatures(target_layer, join_layer, output, join_operation, {spatial_relationship}, {spatial_near_distance}, {temporal_relationship}, {temporal_near_distance}, {attribute_relationship}, {summary_fields}, {join_condition}, {keep_all_target_features}, {include_distance}, {distance_unit})
NomExplicationType de données
target_layer

Contient les entités cibles. Les attributs provenant des entités cibles et les attributs provenant des entités de jointure sont transférés vers la sortie.

Table View
join_layer

Contient les entités de jointure. Les attributs des entités jointes sont joints aux attributs des entités cible. Reportez-vous à l’explication du paramètre Join Operation (Opération de jointure) pour en savoir plus sur les répercussions du type d’opération de jointure sur l’agrégation des attributs joints.

Table View
output

Nouvelle classe d’entités contenant les entités de couche cible avec des entités jointes.

Feature Class;Table
join_operation

Spécifie le mode de traitement des jointures entre les valeurs target_layer et les valeurs join_layer dans la sortie, si plusieurs entités de jointure présentent une relation spatiale identique avec une même entité cible.

  • JOIN_ONE_TO_ONELes attributs provenant de plusieurs entités de jointure sont agrégés. Par exemple, si une entité cible ponctuelle se trouve dans deux entités de jointure surfaciques distinctes, les attributs des deux polygones sont agrégés avant d’être transférés vers la classe d’entités ponctuelle en sortie. Si les polygones ont respectivement les valeurs attributaires 3 et 7, et que la somme des résumés statistiques est spécifiée pour ce champ, la valeur agrégée dans la classe d'entité en sortie est 10. Il s’agit du comportement par défaut et seule la statistique de comptage est renvoyée.
  • JOIN_ONE_TO_MANYLa classe d’entités en sortie contient plusieurs exemplaires (enregistrements) de l’entité cible. Par exemple, si une même entité cible ponctuelle figure dans deux entités de jointure surfaciques distinctes, la classe d’entités en sortie contient deux exemplaires de l’entité cible : un enregistrement avec les attributs du premier polygone et un enregistrement avec les attributs du deuxième polygone. Aucun résumé statistique n’est disponible avec cette option.
String
spatial_relationship
(Facultatif)

Définit les critères utilisés pour joindre spatialement les entités.

  • INTERSECTSLes entités dans les entités de jointure sont appariées si elles intersectent une entité cible. Il s’agit de l’option par défaut.
  • EQUALSLes entités dans les entités de jointure sont appariées si elles possèdent la même géométrie qu'une entité cible.
  • NEARLes entités dans les entités jointes sont appariées si elles se trouvent à une distance spécifiée d'une entité cible. La distance est mesurée à l’aide de la distance planaire. Indiquez une distance dans le paramètre spatial_near_distance.
  • NEAR_GEODESICLes entités dans les entités de jointure sont appariées si elles se trouvent à une distance spécifiée d’une entité cible. La distance est mesurée de manière géodésique. Indiquez une distance dans le paramètre spatial_near_distance.
  • CONTAINSLes entités des entités jointes sont appariées si une entité cible les englobe. Les entités cible doivent être des polygones ou des polylignes. Les entités de jointure ne peuvent être que des polygones lorsque les entités cible le sont également. Un polygone peut contenir tout type d’entité. Une polyligne peut contenir uniquement des polylignes et des points. Un point ne peut pas contenir d’entité, pas même un point. Si l'entité de jointure se trouve entièrement sur la limite de l'entité cible (aucune partie n'est véritablement à l'intérieur ni à l'extérieur), l'entité n'est pas appariée.
  • WITHINLes entités des entités jointes sont appariées si une entité cible se trouve à l'intérieur d'elles. C’est l’inverse de la relation Contient. Les entités cibles ne peuvent être que des polygones lorsque les entités de jointure le sont également. Un point ne peut être une entité de jointure que s’il est également une entité cible. Si la totalité de l'entité dans les entités de jointure est sur la limite de l'entité cible, l'entité n'est pas appariée.
  • TOUCHESLes entités dans les entités jointes sont appariées si elles comportent une limite qui touche une entité cible. Lorsque les entités de jointure et les entités cibles sont des lignes ou des polygones, la limite de l’entité de jointure ne peut toucher que la limite de l’entité cible et aucune partie de l’entité de jointure ne peut dépasser la limite de l’entité cible.
  • CROSSESLes entités dans les entités jointes sont appariées si une entité cible est intersectée par leur contour. Les entités jointe et cible doivent être des lignes ou des polygones. Si des polygones sont utilisés pour les entités jointe et cible, la limite (ligne) du polygone est utilisée. Les lignes qui se croisent au niveau d’un point sont appariées, à l’inverse de celles qui partagent un segment de ligne.
  • OVERLAPSLes entités figurant dans les entités de jointure sont appariées si elles recouvrent une entité cible.
String
spatial_near_distance
(Facultatif)

Distance à partir d’une entité cible dans laquelle les entités de jointure sont prises en compte pour la jointure spatiale. Un rayon de recherche est uniquement valide si la valeur de paramètre spatial_relationship est NEAR ou NEAR_GEODESIC.

Linear Unit
temporal_relationship
(Facultatif)

Définit les critères temporels utilisés pour l’appariement des entités.

  • MEETSLorsque la fin d'un intervalle temporel cible est égale au début de l'intervalle temporel de jointure, les données temporelles cible rejoignent les données temporelles de jointure.
  • MET_BYLorsque le début d'un intervalle temporel cible est égal à la fin de l'intervalle temporel de jointure, les données temporelles cible sont rejointes par les données temporelles de jointure.
  • OVERLAPSLorsqu'un intervalle temporel cible commence et se termine avant le début et la fin de l'intervalle temporel de jointure, les données temporelles cible recouvrent les données temporelles de jointure.
  • OVERLAPPED_BYLorsqu'un intervalle temporel cible commence et se termine après l'heure de début et l'heure de fin de l'intervalle temporel de jointure, les données temporelles cible sont recouvertes par les données temporelles de jointure.
  • DURINGLorsque des données temporelles cible interviennent entre le début et la fin de l'intervalle temporel de jointure, les données temporelles cible se situent pendant les données temporelles de jointure.
  • CONTAINSLorsque les données temporelles d'une entité de jointure interviennent entre le début et la fin de l'intervalle temporel cible, les données temporelles cible contiennent les données temporelles de jointure.
  • EQUALSDes données temporelles sont considérées égales si leurs instants ou intervalles sont identiques.
  • FINISHESLorsque des données temporelles cible se terminent au même moment que des données temporelles de jointure, et que les données temporelles cible ont commencé après celles de jointure, les données temporelles cible terminent les données temporelles de jointure.
  • FINISHED_BYLorsque les données temporelles d'une entité de jointure se terminent au même moment que les données temporelles cible, et que les données temporelles de jointure ont commencé après les données temporelles cible, les données temporelles cible sont terminées par les données temporelles de jointure.
  • STARTSLorsque des données temporelles cibles commencent au même moment que l’intervalle temporel de jointure et se terminent avant la fin de l’intervalle temporel de jointure, les données temporelles cibles démarrent les données temporelles de jointure.
  • STARTED_BYLorsqu'un intervalle temporel cible commence au même moment que les données temporelles de jointure, et se terminent après les données temporelles de jointure, les données temporelles cible sont démarrées par les données temporelles de jointure.
  • INTERSECTSLorsqu'une partie quelconque de données temporelles cible intervient au même moment que les données temporelles de jointure, les données temporelles cible intersectent les données temporelles de jointure.
  • NEARLorsque des données temporelles cible sont comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cible sont proches des données temporelles de jointure.
  • NEAR_BEFORELorsque des données temporelles cibles sont avant les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches avant les données temporelles de jointure.
  • NEAR_AFTERLorsque des données temporelles cibles sont après les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches après les données temporelles de jointure.
String
temporal_near_distance
(Facultatif)

Distance dans les données temporelles à partir d’une entité cible dans laquelle les entités de jointure sont prises en compte pour la jointure spatiale. Des données temporelles sont valides uniquement lorsque la valeur de paramètre temporal_relationship est NEAR, NEAR_BEFORE ou NEAR_AFTER et que les deux entités sont temporelles.

Time Unit
attribute_relationship
[attribute_relationship,...]
(Facultatif)

Joint des entités en fonction des valeurs d'un champ attributaire. Spécifiez le champ attributaire de la couche cible qui correspond à un champ attributaire de la couche de jointure.

  • Champ cible - Champ d'attribut de la couche cible contenant les valeurs à apparier.
  • Champ de jointure - Champ d'attribut de la couche de jointure contenant les valeurs à apparier.

Value Table
summary_fields
[summary_fields,...]
(Facultatif)

Statistiques qui seront calculées sur les champs spécifiés.

  • COUNT : nombre de valeurs non nulles. Il peut être utilisé sur des champs numériques ou des chaînes. Le nombre de [null, 0, 2] est 2.
  • SUM : somme des valeurs numériques dans un champ. La somme des [null, null, 3] est 3.
  • MEAN : moyenne des valeurs numériques. La moyenne des [0,2, null] est 1.
  • MIN : valeur minimale d’un champ numérique. Le minimum de [0, 2, null] est 0.
  • MAX : valeur maximale d’un champ numérique. La valeur maximale de [0, 2, null] est 2.
  • STDDEV : écart type d’un champ numérique. L’écart type de [1] est null. L’écart type de [null, 1,1,1] est null.
  • VAR : variance d’un champ numérique dans une trace. La variance de [1] est null. La variance de [null, 1,1,1] est null.
  • RANGE : plage d’un champ numérique. Elle est calculée comme la valeur minimale soustraite de la valeur maximale. La plage de [0, null, 1] est 1. La plage de [null, 4] est 0.
  • ANY : exemple de chaîne provenant d’un champ de type chaîne.

Value Table
join_condition
(Facultatif)

Applique une condition à des champs spécifiés. Seules les entités présentant des champs qui remplissent ces conditions sont jointes.

Par exemple, vous pouvez appliquer une condition de jointure à des entités dans lesquelles l’attribut HealthSpending de la couche de jointure est supérieur à 20 % de l’attribut Income de la couche cible. Utilisez une expression Arcade telle que $join["HealthSpending"] > $target["Income"] * .2.

String
keep_all_target_features
(Facultatif)

Indique si toutes les entités cibles sont conservées dans la classe d’entités en sortie (jointure externe gauche) ou uniquement celles qui présentent la relation spécifiée avec les entités jointes (jointure interne).

  • KEEP_ALLToutes les entités cibles sont conservées dans la sortie.
  • KEEP_COMMONSeules les entités cibles ayant les relations spécifiées sont conservées dans la classe d’entités en sortie. Il s’agit de l’option par défaut.
Boolean
include_distance
(Facultatif)

Spécifie si la distance spatiale ou la différence temporelle est incluse dans le résultat.

Ce paramètre est actif lorsque la valeur de paramètre join_operation est JOIN_ONE_TO_MANY et que l’un des éléments suivants est vrai :

  • La valeur de paramètre spatial_relationship est NEAR ou NEAR_GEODESIC.
  • La valeur de paramètre temporal_relationship est NEAR, NEAR_BEFORE ou NEAR_AFTER.

  • INCLUDE_DISTANCELa distance spatiale ou la différence temporelle est incluse dans le résultat.
  • NO_INCLUDE_DISTANCELa distance spatiale et la différence temporelle ne sont pas incluses dans le résultat. Il s’agit de l’option par défaut.
Boolean
distance_unit
(Facultatif)

Spécifie l’unité de mesure qui sera utilisée pour les valeurs de distance dans la classe d’entités en sortie.

  • METERSL’unité de mesure est le mètre. Il s’agit de l’option par défaut.
  • KILOMETERSL’unité de mesure est le kilomètre.
  • MILESL’unité de mesure est le mille d’arpentage américain.
  • NAUTICAL_MILESL’unité de mesure est le mille nautique d’arpentage américain.
  • YARDSL’unité de mesure est le yard d'arpentage américain
  • FEETL’unité de mesure est le pied d’arpentage américain
  • MILES_INTL’unité de mesure est le mille terrestre.
  • NAUTICAL_MILES_INTL’unité de mesure est le mille nautique international.
  • YARDS_INTL’unité de mesure est le yard international.
  • FEET_INTL’unité de mesure est le pied international.
String

Exemple de code

Exemple de JoinFeatures (script autonome)

Le script autonome ci-dessous illustre l’utilisation de la fonction JoinFeatures.

# Name: JoinFeatures.py
# Description: Join crime events that are close together in time and space, and 
#              return the count of nearby crimes. This example is a self join 
#              (joining the same layer to itself).

# Import system modules 
import arcpy 

arcpy.env.workspace = "C:/data/CityData.gdb"

# Enable time on the input features using an .lyrx file.
# To create the .lyrx file, add your layer to a map, open the layer properties 
# and enable time. Then right-click the layer and select Share As Layer File.
inputLyrx = r'C:\data\ChicagoCrimes.lyrx'

# MakeFeatureLayer converts the .lyrx to features
chicagoCrimesLayer = arcpy.management.MakeFeatureLayer(inputLyrx, "Crimes_layer")

# ApplySymbologyFromLayer sets the time using the .lyrx file definition
arcpy.management.ApplySymbologyFromLayer(chicagoCrimesLayer, inputLyrx)

# Set local variables
spatialOperation = "NEAR" 
nearDistance = "1 Kilometers" 
temporalOperation = "NEAR" 
nearTime = "3 Hours" 
out = "CloseCrimes"

# Run Join Features
arcpy.gapro.JoinFeatures(chicagoCrimesLayer, inFeatures, out, "JOIN_ONE_TO_ONE", 
                         spatialOperation, nearDistance, temporalOperation, 
                         nearTime)