[GIS] Calculate area of raster grid cells in an unprojected raster using ArcGIS

arcgis-desktoparearaster

I have a raster dataset in a geographic coordinate system where the value of the grid cell is in tons per hectare. I want to be able to calculate the number of hectares in each grid cell so that I can calculate the number of tons per pixel and eventually perform zonal statistics on the raster. The raster covers much of the globe, so the cells near the equator have a different area value than those in northern latitudes. I am hesitant to project the raster as I'm worried it will distort the values.

Is there any way to calculate the area value of each raster cell using Raster Calculator in ArcMap?

I saw a GeoNet thread on how to do this in an earlier version of ArcMap using the $$YMap function, but it says it won't work in versions over 10.0. I'm open to suggestions on how to do this on other platforms, but I have very little scripting experience.

Best Answer

As pointed out in this geonet discussion (https://geonet.esri.com/thread/43270), which I think the OP was referring to, you could project your data to an cylindrical Equal Area projection. Your raster would then have all cells with same size regardless of the proximity to the equator. You could look at the cell size in the raster layer properties (the unit would be the one of your chosen projection), convert it to hectares, calculate the area of a cell (cellsize^2), and eventually perform zonal statistics ad you need. Of course, there's surely be some distortion, you have to choose carefully the projection which fits your needs the most, or subdivide your area in many parts and project each of them in a different projection (but this would be very tricky).

Related Question