Let's imagine we have some polygons that cover a whole study plot (see attached picture). Further, we have some points (red dots) lying within the polygons. For each polygon we want to calculate the expected number of points, against which compare the observed number of points, and to calculate the significance (i.e., p-value) of the observed number of points under the Null Hypothesis of a random distribution of points within the study area as a whole.

We actually know (a) the area of each polygon, (b) the total area of the study plot (=sum of the polygons' area), (c) the total number of points, and (d) the number of points falling inside each polygon.

For the p-value, my best guess is to use the binomial distribution, but I can't figure out how to exactly do that. In particular, where I am stuck is in working out the value of p, which in the case of polygons of equal size (i.e., quadrats) should be the reciprocal of the number of quadrats into which the study area is divided. But I do not know how to calculate p in case of polygons of unequal size.

In case of quadrats (equal sized polygons), I have read that we should use a binomial distribution with:

p=1/x (where x is the number of quadrats)

n=number of events in the pattern (i.e., total number of points)

k=number of events in a quadrat.

In the specific case I described, would p be equal to the fraction of each polygon's area relative to the whole study plot (i.e., p=polygon area/sum of all the polygons area)? enter image description here

1 Answer 1


For each region you have the observed number of points. If you can compute the expected number of points you can use a chi-square test, as long as you have about 5 or more expected points in each region...

The expected number of points in a region can be estimated by using the total number of points (and the total area) to estimate the intensity of the process (events per unit area) and then multiplied up by the area of each region. Compute your chi-squared statistic from the set of observed and expecteds and that lets you do a hypothesis test.

This is what the spatstat function quadrat.test does. If there are small numbers of points in the areas then this method doesn't work too well, so it does a Monte-carlo simulation approach. A number of simulations of complete spatial randomness are done and counts of observed-under-simulation are compared with observed-data using chi-squared statistics again. The estimate of the intensity of the simulated pattern comes from the number of points in the data.

That's all explained nicely in the help for quadrat.test in R and in most good spatial statistics books.

  • Thank you for your input, and for pointing out that R function. I see your point. But, if one would like to stick with the binomial distribution (following literature) to calculate the probability of observed counts within each polygons, would (in R) the following be correct: dbinom(x=number of points within a polygon, size=total number of points, prob=%area), where %area corresponds to each polygon area/sum of all the polygons area? (note: prob, in case of equal-sized polygons, would be equal to 1/number of polygons).
    – NewAtGis
    Jan 13, 2018 at 9:12
  • I come up with what I said in my preceding comment on the basis of O'Sallivan-Unwin, "Geographic Information Analysis", 2010, p. 104, who say: "...the probability p in the quadrat counting case is given by the size of each quadrat relative to the size of the study region.....This gives us the final expression for the probability distribution of the quadrat counts for a point pattern generated by IRP....which is simply a binomial distribution with p=1/x [in case of quadrats of equal size]....."
    – NewAtGis
    Jan 13, 2018 at 9:50

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.