Using Maxent output in ArcGIS to calculate area

873 views
Skip to first unread message

Carolyn Devens

unread,
Mar 23, 2016, 7:01:01 AM3/23/16
to Maxent
Hi everyone,
What I want to do is take my leopard habitat mask that I made in Maxent with various covariates and GPS collar data and input it into ArcGIS (or QGIS) to then calculate the suitable habitat using the Natural Breaks (Jenks) category threshold!

Well, calculating area is usually straightforward using cell size and the attribute table, BUT when there is no attribute table for my maxent output?! And when I convert the asc file into a polygon I lose all variation in the values I do have and the numbers become just zeros and 1.

Am I missing some really obvious step to be able to use the output and manipulate it in GIS with an attribute table? I'm not great at GIS but I can't even seem to get past go with this since there is no attribute table to manipulate!!

What seemed straight forward on paper initially has now cost me a multiple afternoons of sanity on GIS! I love maxent and desperately need to be able to deduce the area (km2) of suitable habitat for my leopards from my output map! Help!!

Thanks in advance!!!
Carolyn

romunov

unread,
Mar 23, 2016, 7:12:15 AM3/23/16
to maxent
Hi,

I imagine something like this would be trivial in R. If you run the model through a RasterLayer object (package dismo), you would find how many cells have a value above/below some threshold, count how many there are and multiply it by cell area size.

library(raster)

cell.area.size <- 4 #km^2
r <- raster(nrows = 10, ncols = 10)
r[] <- rnorm(10*10, mean = 0)
length(r[r > 0]) * cell.area

Cheers,
Roman

Carolyn

--
You received this message because you are subscribed to the Google Groups "Maxent" group.
To unsubscribe from this group and stop receiving emails from it, send an email to maxent+un...@googlegroups.com.
To post to this group, send email to max...@googlegroups.com.
Visit this group at https://groups.google.com/group/maxent.
For more options, visit https://groups.google.com/d/optout.



--
In God we trust, all others bring data.

Jamie M. Kass

unread,
Mar 23, 2016, 7:16:27 AM3/23/16
to Maxent
I see what you're trying to do, and let me try and address the "calculating area" part first. First, you can't get an accurate estimate of area in a GIS unless you project the raster to a "projected coordinate system" that describes coordinates in meters. Otherwise, especially for large extents, your areal estimates will be biased because the length of a degree changes as you move latitudinally on the globe. Second, you can usually use the "Build Raster Attribute Table" tool when you have no attribute table, and this usually works best whwn you export the ASCII to a native Arc grid.

Now, about getting a binary range map from a continuous Maxent output, using the Natural Breaks classifications to do this is not conventional, but not any more subjective than other methods. How do you know which break to use? Make sure the break you use matches with your expectations for what the range should look like: you're the expert here. The most conventional way, when you need to convert to binary for areal estimates, is to use one of the thresholds suggested in the Maxent output HTML. For a wide-ranging habitat generalist like leopards, the minimum training presence will likely be very small and will result in an over-prediction, but experiment with the different ones you see there if the Jenks one don't look right to you. There are also suggestions in the literature concerning thresholds: look up "maxent binary thresholds" or something like that.

Jamie Kass
PhD Student
City College, NYC

Tereza

unread,
Apr 3, 2016, 8:40:25 PM4/3/16
to Maxent
Hi Carolyn,

Not sure if you still need this but these are my steps to do exactly what you are asking for:

1.       Reclassify the Ecological niche model (ENM) using the “Reclassify” function” under “Spatial Analyst” -> “Reclass” so that logistic probability below 0.05 is recorded as “NoData” and logistic probability above 0.05 as 1. “NoData” stay as “NoData”.

2.       Convert the reclassified raster to a shapefile using the “Raster To Polygon” function in “Conversion Tools” -> “From Raster”

3.       Select the polygons within the dispersal abilities of your organism, i.e., this will remove areas far away from the species range that are suitable but likely unoccupied due to historical factors. Copy the selected polygon(s) to a new layer

4.       Open the Atribute Table and record the Shape_Area of the ENM

5.       Create a Minimum Binding Geometry (MBG) under “Data Management Tools” -> “Features”. Use Convex_hull as Geometry type. You can do all your taxa at once if you have them in a single shapefile using the “Group Option” function. Then select polygons for individual taxa and copy to a new file.

6.       If the MBG extends over water, those areas that represent water need to be removed. The easiest way is to use the “Intersect” feature under “Analysis Tools” -> “Overlay”.

7.       Open the Atribute Table and record the Shape_Area of the MBG

Reply all
Reply to author
Forward
0 new messages