I have binary map for disease suitable area and I want to calculate the percentage using pixel count in each polygon how can I do that?

I use zonal histogram and do have frequency for each polygon is there is way to use this values to calculate the percentage in each polygon?

  • 3
    What program are you using?
    – Jake
    Nov 22, 2013 at 10:08
  • I use Arc.GIS 10 Nov 22, 2013 at 10:15
  • You need to provide more deteails. What do you mean by binary map? what do you mean by 'calculate the percentage'? Nov 22, 2013 at 10:34
  • I guess that by 'Binary Map' - @Basma Sheta meant a raster that containt pixel information for either it is suitable for disease or not. Calculating the percentage can be performed by summerize the area of the pixels for each type (suitable or not) in each polygon (count the pixels in each polygon and multiple the count with the area of each pixel using cell size), than divide it by polyogn area. Don't know arc functions to perform it though.
    – dof1985
    Nov 22, 2013 at 10:38
  • Yes this is really what I want to do. I use zonal histogram but it calculate the frequency in each polygon (suitable and unsuitable). I don't know how to calculate this count for each polygon. Nov 22, 2013 at 18:45

1 Answer 1


If you use the "Zonal statistics as table"-Tool (and check to calculate "all statistics"), you should get everything you need to calculate percentages in the output table. There will be a field "count" which represents the number of pixels in the zone, and the field "sum" will have the number of pixels where your binary grid has the value one in each zone. From there it should be straightforward to calculate percentages.

  • 1
    I will warn you that I have had a bug logged with ESRI for two years not regarding exactly this issue. I have found that the counts on large rasters are incorrect. I have run "Zonal statistics as table" 4 times on the same data and gotten 4 different counts. I have not figured out what the raster size needs to be for this to pop up and it does not seem to be an issue on smaller rasters. I think that it is related to the pyramid-tiling used for larger rasters. May 19, 2014 at 16:33
  • Is this still an issue with 10.2, where Zonal Stats was completley rewritten (at least I believe so since it now uses multi-processing and is lightning fast)?
    – G-wizard
    Aug 19, 2014 at 21:41
  • Zonal stat internally convert the vector to a raster for he processing. If you don't manage this, the size will be selected arbitrarily, which can cause resampling and rounding errors.
    – radouxju
    Nov 27, 2014 at 8:58

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.