I have a reclassified raster dataset (10 classes) and I want to find out the area of each class contained within multiple (hundreds-to-thousands) polygons.
I have all the polygons in the same shapefile and have used 'Extract by Mask' which has given me the raster for all the polygons, but now I want to do this for each individual polygon. I have been selecting each polygon individually and running 'Extract by Mask' which is working but will obviously take forever with 1000's of polygons.
-
I'm using ArcGIS 10.1 by the way, and don't have access to other software. I also don't have any real coding skills, especially not with Python.Tom– Tom2013年12月18日 00:32:45 +00:00Commented Dec 18, 2013 at 0:32
-
1Welcome to GIS SE! You can use the edit button beneath your Question to revise it (and your tags) with your GIS software and version.PolyGeo– PolyGeo ♦2013年12月18日 00:33:58 +00:00Commented Dec 18, 2013 at 0:33
-
try this freeeware software addin Hawths_Analysis_Tools_for_ArcGIS9user27829– user278292014年03月08日 12:31:43 +00:00Commented Mar 8, 2014 at 12:31
-
What could you use if your polygons do overlap?user40846– user408462014年11月19日 19:49:25 +00:00Commented Nov 19, 2014 at 19:49
-
If you have a new question, please ask it by clicking the Ask Question button. Include a link to this question if it helps provide context.Jason Scheirer– Jason Scheirer2014年11月19日 20:26:27 +00:00Commented Nov 19, 2014 at 20:26
2 Answers 2
Assuming that the polygons do not overlap in any way, you can use Tabulate Areas tool in Spatial Analyst to calculate the areas in batch. Your polygons would be the ZoneRas
, and your reclassified raster would be the ClassRas
:
Tabulate areas tool
Note that if the zone layer
is a polygon feature layer, this tool rasterizes it before processing, which is why it asks for a processing cell size
. In order to have more control over this rasterization process, I convert the feature layer to raster myself using the Polygon to Raster tool. This way I can control things like processing extent and pixel registration (using the Snap Raster environment setting).
Regardless of whether you choose to do the rasterization yourself or let Tabulate Areas handle it for you, just make sure that both layers are in the same projected coordinate system.
-
Awesome! Worked perfectly. Polygon to Raster before running Tabulate Areas definitely gives more control thanks for the tip!Tom– Tom2013年12月19日 00:38:59 +00:00Commented Dec 19, 2013 at 0:38
-
I always find the name of this tool misleading as to what it actually does. good answer.If you do not know- just GIS– If you do not know- just GIS2014年11月19日 20:32:36 +00:00Commented Nov 19, 2014 at 20:32
For the solution, we can just do this:
- right click on extract by mask in arctoolbox, then click on batch
- select the same raster for all input raster.
- select those polygons for mask data.
- for output the same direction can be pasted.
Explore related questions
See similar questions with these tags.