Somando valores de atributo para áreas onde vários polígonos se sobrepõem usando o ArcGIS Desktop?

8

Eu tenho um shapefile com muitos polígonos (pelo menos 100). Cada polígono tem um valor. Quase todos esses polígonos se sobrepõem. Quero somar os valores dos polígonos nas sobreposições, dependendo de quais polígonos se sobrepõem nessa área sobreposta. Esperamos que a figura (esboço simplificado) explique isso.

Mas não consigo encontrar um método para conseguir isso no ArcMap (eu uso o Arcmap 10.2.2). Eu tentei muitas vezes a ferramenta Union e outras como Merge, mas não consigo encontrar uma solução.

insira a descrição da imagem aqui

Mentiras
fonte

Respostas:

9

Você pode fazer isso com 2 ferramentas, Feature to Polygon e Spatial Join

Primeiro, execute seus polígonos por meio do recurso para polígono. Exclua qualquer um dos atributos que você não precisa da saída (eu ainda os obtive mesmo quando desativei os atributos de preservação):

Em seguida, execute Junção Espacial:

  • Os recursos de destino são a saída do recurso para polígono
  • Os recursos de junção são sua camada original.
  • Edite o mapeamento de campo para conter apenas os campos necessários e defina a regra de mesclagem no seu campo de contagem como 'soma'.
  • Defina a opção de correspondência como COMPLETELY_WITHIN (isso é importante!)

insira a descrição da imagem aqui

Você deve terminar com seus limites cruzados com totais somados: insira a descrição da imagem aqui

Gênio do mal
fonte
Obrigado pela ajuda. Funciona quando é simples, como no exemplo. Mas quando existem quase 20 polígonos, alguns se sobrepõem e outros não, então funciona apenas para alguns polígonos, e não para todos. Se você usa a ferramenta Feature To Polygon, precisa fazer pontos com seus polígonos originais para preencher os 'recursos de etiqueta', apenas para ter os atributos que deseja preservar?
Mentiras
Não, você não precisa usar pontos de etiqueta, os atributos vêm da camada original.
Evil Genius
1
Eu tive o problema exato como o OP e segui o procedimento do Evil Genius (criativo!). Mas, como o OP, nem todos os polígonos de destino foram somados corretamente. Usar HAVE_THEIR_CENTER_IN em vez de COMPLETELY_WITHIN funcionou corretamente para mim.
Stu Smith
3

Dependendo de quantos valores únicos existem na sua tabela, eu faria uma interseção. No seu exemplo, o novo recurso em que todos os três se sobrepõem seria chamado de verde, vermelho e preto. Agora, se você tiver cerca de cem valores únicos, terá várias interseções. Você ainda poderá ver quais valores estão sobrepostos e quais não.

Adam Kara
fonte