This analysis was done with the ABMI photo plots in the Boreal and Foothills natural regions. In total, there were 32,715 wetland form polygons and 28,474 wetland class polygons. The MMU of the ABMI plots is 0.5 ha. This document summarizes the distribution of wetland sizes at the form and class level. This is done to help inform a proper Minimum Mapping Unit (MMU) in the Boreal/Foothills area.
#Alberta wetland inventory MMU Boreal analysis
library(ggplot2)
library(dplyr)
library(tidyr)
library(knitr)
setwd("X:/ALPHA/PersonalFolders/EvanDeLancey/AMWI_Boreal_MMU")
form <- read.csv("wetlandFormDF.csv")
class <- read.csv("wetlandClassDF.csv")
#form analysis
#full plot
ggplot(form, aes(x=areaHA)) + geom_histogram(bins=100) +
xlim(0, 50) + xlab("Wetland area (ha)") + ggtitle("Full plot")
#zoom in plot
ggplot(form, aes(x=areaHA)) + geom_histogram(bins=200) +
xlim(0, 5) + xlab("Wetland area (ha)") + ggtitle("Zoomed plot")
t1 <- quantile(form$areaHA, c(0.025, 0.05, 0.1, 0.15))
t12 <- ecdf(form$areaHA)(0.6)
t2 <- ecdf(form$areaHA)(0.9)
t3 <- ecdf(form$areaHA)(2)
prcnt <- data.frame(
Percentile = round(c(2.5, 5, 10, 15, t12*100, t2*100, t3*100), digits = 2),
Area = round(c(t1, 0.6, 0.9, 2), digits = 2)
)
colnames(prcnt) <- c("Percentile", "Wetland size (ha)")
kable(prcnt)
| Percentile | Wetland size (ha) |
|---|---|
| 2.50 | 0.61 |
| 5.00 | 0.72 |
| 10.00 | 0.97 |
| 15.00 | 1.25 |
| 2.39 | 0.60 |
| 8.61 | 0.90 |
| 25.11 | 2.00 |
areaF <- form$areaHA
totalWetArea <- sum(areaF)
cat("Percent wetlands (area wise) above 0.6 ha = ", round(sum(areaF[areaF>0.6])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 0.6 ha = 99.91
cat("Percent wetlands (area wise) above 0.75 ha = ", round(sum(areaF[areaF>0.75])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 0.75 ha = 99.77
cat("Percent wetlands (area wise) above 0.9 ha = ", round(sum(areaF[areaF>0.9])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 0.9 ha = 99.6
cat("Percent wetlands (area wise) above 2 ha = ", round(sum(areaF[areaF>2])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 2 ha = 98.06
joinTable <- data.frame(
wetForm = c("Open water", "Fen tree", "Fen swamp", "Fen open", "Bog tree", "Bog swamp", "Marsh open", "Swamp tree", "Swamp shrub"),
lndcvCN = c(0, 10, 11, 12, 20, 21, 30, 40, 41)
)
form <- merge(form, joinTable, by = "lndcvCN")
ggplot(form, aes(x = wetForm, y = areaHA)) + geom_violin() +
ylim(0,10) + xlab("Wetland form") + ylab("Area (ha)")
tbl <- form %>% filter(areaHA < 0.6) %>% group_by(wetForm) %>% summarise(number = n()) %>% arrange(desc(number))
kable(tbl)
| wetForm | number |
|---|---|
| Open water | 243 |
| Swamp tree | 179 |
| Marsh open | 94 |
| Fen tree | 92 |
| Swamp shrub | 78 |
| Fen open | 51 |
| Fen swamp | 25 |
| Bog tree | 21 |
tbl <- form %>% filter(areaHA < 0.9) %>% group_by(wetForm) %>% summarise(number = n()) %>% arrange(desc(number))
kable(tbl)
| wetForm | number |
|---|---|
| Open water | 822 |
| Swamp tree | 689 |
| Marsh open | 353 |
| Fen tree | 344 |
| Swamp shrub | 280 |
| Fen open | 148 |
| Fen swamp | 94 |
| Bog tree | 88 |
tbl <- form %>% filter(areaHA < 2) %>% group_by(wetForm) %>% summarise(number = n()) %>% arrange(desc(number))
kable(tbl)
| wetForm | number |
|---|---|
| Swamp tree | 2304 |
| Open water | 1925 |
| Fen tree | 1194 |
| Marsh open | 923 |
| Swamp shrub | 754 |
| Fen open | 464 |
| Bog tree | 359 |
| Fen swamp | 284 |
| Bog swamp | 8 |
91% of wetland polygons are captured with an MMU of 0.9 ha. By area, 99.6% of wetlands are captured with a MMU of 0.9 ha. Most of the wetlands missed with a 0.9 ha MMU are open water and treed swamps.
98% of wetland polygons are captures with an MMU of 0.6 ha. By area, 99.9% of wetlands are captured with a MMU of 0.6 ha. Most of the wetlands missed with a 0.6 ha MMU are open water and treed swamps.
#class analysis
#full plot
ggplot(class, aes(x=areaHA)) + geom_histogram(bins=100) +
xlim(0, 50) + xlab("Wetland area (ha)") + ggtitle("Full plot")
#zoom in plot
ggplot(class, aes(x=areaHA)) + geom_histogram(bins=200) +
xlim(0, 5) + xlab("Wetland area (ha)") + ggtitle("Zoomed plot")
t1 <- quantile(class$areaHA, c(0.025, 0.05, 0.1, 0.15))
t2 <- ecdf(class$areaHA)(0.9)
t3 <- ecdf(class$areaHA)(2)
prcnt <- data.frame(
Percentile = round(c(2.5, 5, 10, 15, t2*100, t3*100), digits = 2),
Area = round(c(t1, 0.9, 2), digits = 2)
)
colnames(prcnt) <- c("Percentile", "Wetland size (ha)")
kable(prcnt)
| Percentile | Wetland size (ha) |
|---|---|
| 2.50 | 0.60 |
| 5.00 | 0.71 |
| 10.00 | 0.94 |
| 15.00 | 1.20 |
| 9.09 | 0.90 |
| 26.06 | 2.00 |
areaF <- class$areaHA
totalWetArea <- sum(areaF)
cat("Percent wetlands (area wise) above 0.75 ha = ", round(sum(areaF[areaF>0.75])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 0.75 ha = 99.79
cat("Percent wetlands (area wise) above 0.9 ha = ", round(sum(areaF[areaF>0.9])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 0.9 ha = 99.63
cat("Percent wetlands (area wise) above 2 ha = ", round(sum(areaF[areaF>2])/totalWetArea*100, digits = 2))
Percent wetlands (area wise) above 2 ha = 98.26
joinTable <- data.frame(
wetclass = c("Open water", "Fen", "Bog", "Marsh", "Swamp"),
PLC30_N = c(0, 1, 2, 3, 4)
)
class <- merge(class, joinTable, by = "PLC30_N")
ggplot(class, aes(x = wetclass, y = areaHA)) + geom_violin() +
ylim(0,10) + xlab("Wetland class") + ylab("Area (ha)")
tbl <- class %>% filter(areaHA < 0.9) %>% group_by(wetclass) %>% summarise(number = n()) %>% arrange(desc(number))
kable(tbl)
| wetclass | number |
|---|---|
| Swamp | 907 |
| Open water | 822 |
| Fen | 443 |
| Marsh | 327 |
| Bog | 88 |
tbl <- class %>% filter(areaHA < 2) %>% group_by(wetclass) %>% summarise(number = n()) %>% arrange(desc(number))
kable(tbl)
| wetclass | number |
|---|---|
| Swamp | 2820 |
| Open water | 1925 |
| Fen | 1432 |
| Marsh | 877 |
| Bog | 365 |