Spatial join with overlapping polygons

5734
10
06-06-2022 05:06 PM
Labels (3)
YaelNidam
Emerging Contributor

Hi I'm using ArcGIS Pro and I am trying to figure out how to assign the attributes of several overlapping polygons in one layer, to a set of polygons within them in another layer.

This will be easier to understand with the example of the two layers I am trying to analyze:

Layer one:  Visualized with a black frame in the image below. These polygons are overlapping and nested in one layer. Each polygon represents the service area for an electric utility. Some areas are covered by more than one utility and therefore are overlapping.

Layer 2: Visualized in yellow color and a gray stroke. These are the census tract polygons and they are not overlapping.

 

My goal is to identify for each census tract (polygon in layer two), all electric utilities providing service. In other words - all polygons from layer 1 that contain it, and then add their properties each census tract.

If I didn't have overlapping polygons in layer 1, I could have achieved this with a spatial join. But since I do have an overlap I'm seeking your advice in figuring out how to do this analysis.

Is there a way to re-create layer one (utility service area) so that it doesn't contain overlaps but maintains all the information about overlapping coverage area?

Is there a way to do spatial join with overlapping polygons?

What other things should I try?

Many thanks!

 

 

YaelNidam_0-1654559485012.png

 

0 Kudos
10 Replies
AndyAnderson
Frequent Contributor

Intersect the utility layer with itself. The result will split the overlapping areas from other parts of the layer, while reproducing the two attribute tables. Where overlap occurs the utility names will be different. Delete the extra set of fields that are pure duplications. Then union the census tracts with the utility layer (union will preserve the entirety of the tracts, intersect may not). This will produce a layer with each census tract split, if necessary, to represent the utility/utilities serving that portion of the tract, and with that field of information appended.

— Andy

YaelNidam
Emerging Contributor

Thanks so much for the detailed response! 

I tried interesting the utility layer with itself but the resulting polygons didn't preserve the information from the overlapping layers, the same utility name was reproduced. It's also worthwhile to note that there could be more than 2 overlapping utilities for each census tract, which might complicate things. 

I'm trying a manual approach now, where I identify overlapping utilities and place them in a different layer. I have managed to separate utilities by type and to create 5 different layers. My plan is now to spatially join these layers with the census tract layer. It's a much longer and more manual process, but I think it can work.

If I misunderstood your suggestion, please let me knw, it would be awesome to learn a more efficient approach to doing this

0 Kudos
AndyAnderson
Frequent Contributor

The image below shows what I get when I do a self-intersection of a layer with overlapping polygons. Notice that I get duplicated polygons, so there are six rather than just three polygons. But two of those, the actual overlap, do indeed have different names.

The tool I used is shown in the second image. Can you be more explicit about what you actually did that the attributes were not copied from the two different layers as you can see below?

Screen Shot 2022-06-09 at 11.15.40 AM.png

Screen Shot 2022-06-09 at 11.22.32 AM.png

0 Kudos
RhettZufelt
MVP Notable Contributor

My post is about the Spatial Join GP tool, not Intersect.

R_

0 Kudos
AndyAnderson
Frequent Contributor

I’m not replying to you, RhettZufelt, I’m replying to the originator of this thread, YaelNidam.

0 Kudos
RhettZufelt
MVP Notable Contributor

Take a look at this Blog using Spatial Join with multiple overlaps.  Especially the join merge option part.

It is for ArcMap, but the same options exist in Pro.

R_

0 Kudos
YaelNidam
Emerging Contributor

Thanks! That's exactly the solution I'm looking for. Unfortunately I couldn't find the same functionality in ArcGIS Pro. Do you know if this function of spatial join actually exists in this way in the pro version? Thanks so much for your help.

0 Kudos
RhettZufelt
MVP Notable Contributor

It is there in Pro.  Once you have the data loaded, you can find it in the "Fields" section:

 

RhettZufelt_0-1654704544448.png

R_

 

 

0 Kudos
YaelNidam
Emerging Contributor

Thanks! I've tried this but it didn't work for me. When I use this function with the definition you specified I get one utility assigned to each census tract, as opposed to multiple utilities assigned to each census tract. I'm attaching an image of my definitions. Did I miss something?

Thanks so much for your help!!

YaelNidam_0-1654709542678.png

 

YaelNidam_1-1654709574676.png

 

0 Kudos