I am using ArcGIS Desktop 10.3.

enter image description here

I have two polygon shape files that represents the building footprints and the plot. I want to calculate the plot ratio (area of built/area of the plot). I used spatial join with sum function, but summing up the area of the polygons that located inside one plot is not calculated correctly. Any idea how to do that? the last column is the actual value the one before last is calculated by spatial join.

  • 1
    Can you upload a picture of your data to show WHY they would be wrong? – Hornbydd May 14 '18 at 15:57
  • Intersect, Dissolve by plot ID (or plot name etc), calculate an area column, join this back to the plots, calculate a ratio. – BERA May 14 '18 at 18:43
  1. Calculate the area for all buildings in a new field

  2. Calculate the area for each plot in a new field

  3. Spatial join both shapefiles

  4. Analysis ->Statistics -> Summary Statistics

enter image description here

As shown in the picture, it will calculate the sum of the areas when the id is similar (So the sum of the areas inside one plot).

enter image description here

  1. Then in a new field >> calculate field (SumAreaBuild/ MeanAreaPolt)

enter image description here

  • This is too basic. Your sample is one building polygon over one plot. My sample contain sometimes 6 polygons inside one polygon. – sawsan May 14 '18 at 17:37
  • @sawsan I updated my answer to be more advanced and to solve your problem – Moh May 14 '18 at 18:16
  • 1
    Thanks alot! but I have no unique ID for the plot. That is why I was trying to do it in one step with spatial Join. your method working perfectly for data with unique ID. – sawsan May 14 '18 at 19:23
  • @sawsan You welcome. FID is enough, Spatial join will create Join_ID add it automatically. So then you will define it on the statistics analysis – Moh May 14 '18 at 19:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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