Additionner les valeurs d'attribut pour les zones où plusieurs polgons se chevauchent à l'aide d'ArcGIS Desktop?

8

J'ai un fichier de formes avec plusieurs polygones (au moins 100). Chaque polygone a une valeur. Presque tous ces polygones se chevauchent. Je veux additionner les valeurs des polygones dans les chevauchements dépendent des polygones qui se chevauchent dans cette zone de chevauchement. Nous espérons que l'image (croquis simplifié) explique cela.

Mais je ne trouve pas de méthode pour y parvenir dans ArcMap (j'utilise Arcmap 10.2.2). J'ai essayé à plusieurs reprises l'outil Union et d'autres comme Merge, mais je ne trouve pas de solution.

entrez la description de l'image ici

Le mensonge
la source

Réponses:

9

Vous pouvez le faire avec 2 outils, Feature to Polygon et Spatial Join

Tout d'abord, exécutez vos polygones via Entité vers polygone. Supprimez tous les attributs dont vous n'avez pas besoin de la sortie (je les ai toujours obtenus même lorsque j'ai désactivé les attributs de conservation):

Ensuite, exécutez Spatial Join:

  • Les entités cibles sont la sortie de l'entité vers le polygone
  • Les fonctions de jointure sont votre couche d'origine.
  • Modifiez le mappage de champ pour qu'il contienne uniquement les champs dont vous avez besoin et définissez la règle de fusion de votre champ de comptage sur «somme».
  • Définissez l'option de correspondance sur COMPLETELY_WITHIN (c'est important!)

entrez la description de l'image ici

Vous devriez vous retrouver avec vos limites intersectées avec des totaux additionnés: entrez la description de l'image ici

Génie du mal
la source
Merci pour l'aide. Cela fonctionne quand c'est simple, comme dans l'exemple. Mais quand il y a près de 20 polygones, certains se chevauchent et d'autres non, cela ne fonctionne que pour certains polygones, donc pas pour tous. Si vous utilisez l'outil Entité vers polygone, devez-vous créer des points à partir de vos polygones d'origine pour remplir les 'entités d'étiquette', juste pour avoir les attributs que vous souhaitez conserver?
Mensonge
Non, vous ne devriez pas avoir besoin d'utiliser des points d'étiquette, les attributs proviennent du calque d'origine.
Evil Genius
1
J'ai eu le problème exact en tant qu'OP et j'ai suivi la procédure (créative!) D'Evil Genius. Mais comme l'OP, tous les polygones cibles ne sont pas sommés correctement. L'utilisation de HAVE_THEIR_CENTER_IN au lieu de COMPLETELY_WITHIN a fonctionné correctement pour moi.
Stu Smith
3

Selon le nombre de valeurs uniques dans votre table, je ferais une intersection. Dans votre exemple, la nouvelle fonctionnalité où les trois chevauchements seraient appelés vert, rouge, noir. Maintenant, si vous avez une centaine de valeurs uniques, vous allez avoir beaucoup d'intersections. Vous pourrez toujours voir quelles valeurs se chevauchent et quelles valeurs ne le font pas.

Adam Kara
la source