FAQ: Under what circumstances would the Spatial Join tool choose the wrong features to satisfy a spatial relationship?
Under what circumstances would the Spatial Join tool choose the wrong features to satisfy a spatial relationship?
There are several factors that could contribute to the Spatial Join tool producing unexpected output.
Tolerance A likely cause for unexpected output of a spatial join is that the tolerance of the data is too large for the resolution. This causes features to be considered 'touching,' 'within,' 'identical to,' 'intersecting,' or to have some other relationship that is not actually true when the data are viewed at a very large scale, such as 1:10, 1:1, or 1:0.1.
A recommended best practice is to set the tolerance to ten times the resolution. Tolerance is the distance within which vertices are considered coincident.
If the spatial join is done with ArcMap's Join command, joining data from another layer based on spatial location, examine the coordinate system of the two layers and of the map dataframe to be sure they are compatible as described above, and that any necessary geographic transformation has been set in the dataframe properties. Data Conversion Factors such as tolerance and resolution cannot be changed in an existing dataset. Create a new feature class with the desired resolution and tolerance. There are a number of tools that can load data from the original feature class into a new one: - The Object Loader in ArcMap - The Simple Data Loader in ArcCatalog or the Catalog window in ArcMap - ArcToolbox > Data Management Tools > General > Append
For comparing spatial properties such as distance and position, it is recommended that a projected coordinate system (with linear units of feet, meters, etc.) be used, rather than a geographic coordinate system (with angular units of degrees).