I'm working with two datasets, a parcel layer and a zoning layer, where the parcel table does not contain zoning information. I would like to attach the zoning information to the parcel layer using a spatial join. However, the zoning layer does not perfectly coincide with the parcel layer.

In essence, some parcels have two or more zoning categories contained within them. I would like to ignore this and append only the zoning class that represents the majority area of the parcel. For the highlighted parcel in the screenshot, that would mean I want only the zoning class associated with the yellow color to be connected to the parcel table.

What is the best process to do this?

parcel layer in black outline, zoning layer in color


1 Answer 1


When you do the Spatial Join, select the option HAVE_THEIR_CENTER_IN from the Match Option (optional).

HAVE_THEIR_CENTER_IN—The features in the join features will be matched if a target feature's center falls within them. The center of the feature is calculated as follows: for polygon and multipoint the geometry's centroid is used, and for line input the geometry's midpoint is used. Specify a distance in the search_radius parameter.

This will select the zoning where the center of the parcel is located inside. The yellow zoning will be joined with the target parcel in this case.

In the following example, the center of the red polygon is located inside the polygon Name 14. Applying the spatial join with the option HAVE_THEIR_CENTER_IN from the Match Option (optional) will join the grid Name 14 with the red polygon and ignore other grid polygons.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.