diff --git a/docs/index.html b/docs/index.html index c66db44..6fda549 100644 --- a/docs/index.html +++ b/docs/index.html @@ -841,61 +841,65 @@

Extracting Land
DT::datatable(res_points_by_site)
-
- +
+
+

We save this table.

+
+
readr::write_csv(res_points_by_site, "outputs/res_points_by_site.csv")
+

Results

We can plot the results with “dodged” ggplot2 barplots.

-
my_pal <- c('#c7e9b4','#7fcdbb','#41b6c4','#1d91c0','#225ea8','#0c2c84')
-
-ggplot(res) +
-  geom_bar(aes(x = label, y = prop, fill = scale, colour = scale), 
-           alpha = 0.8,
-           stat = "identity",
-           position = "dodge") +
-  theme_bw() +
-  theme(axis.text.x = element_text(angle = 20, vjust = 1, hjust = 1)) +
-  labs(x = "Land Use Class", y = "Proportion",
-       fill = "Scale", colour = "Scale") +
-  scale_fill_manual(values = my_pal) +
-  scale_color_manual(values = my_pal)
+
my_pal <- c('#c7e9b4','#7fcdbb','#41b6c4','#1d91c0','#225ea8','#0c2c84')
+
+ggplot(res) +
+  geom_bar(aes(x = label, y = prop, fill = scale, colour = scale), 
+           alpha = 0.8,
+           stat = "identity",
+           position = "dodge") +
+  theme_bw() +
+  theme(axis.text.x = element_text(angle = 20, vjust = 1, hjust = 1)) +
+  labs(x = "Land Use Class", y = "Proportion",
+       fill = "Scale", colour = "Scale") +
+  scale_fill_manual(values = my_pal) +
+  scale_color_manual(values = my_pal)
-

+

Removing the land use classes than are not present around sites, we get a slightly easier graph to read.

-
only_at_sites <- res |> 
-  dplyr::filter(prop > 0) |> 
-  dplyr::filter(scale != "Ecodistrict") |> 
-  dplyr::pull(label)
-
-res_filt <- res |> 
-  dplyr::filter(label %in% only_at_sites)
-
-ggplot(res_filt) +
-  geom_bar(aes(x = label, y = prop, fill = scale, colour = scale), 
-           alpha = 0.8,
-           stat = "identity",
-           position = "dodge") +
-  theme_bw() +
-  theme(axis.text.x = element_text(angle = 20, vjust = 1, hjust = 1)) +
-  labs(x = "Land Use Class", y = "Proportion",
-       fill = "Scale", colour = "Scale") +
-  scale_fill_manual(values = my_pal) +
-  scale_color_manual(values = my_pal)
+
only_at_sites <- res |> 
+  dplyr::filter(prop > 0) |> 
+  dplyr::filter(scale != "Ecodistrict") |> 
+  dplyr::pull(label)
+
+res_filt <- res |> 
+  dplyr::filter(label %in% only_at_sites)
+
+ggplot(res_filt) +
+  geom_bar(aes(x = label, y = prop, fill = scale, colour = scale), 
+           alpha = 0.8,
+           stat = "identity",
+           position = "dodge") +
+  theme_bw() +
+  theme(axis.text.x = element_text(angle = 20, vjust = 1, hjust = 1)) +
+  labs(x = "Land Use Class", y = "Proportion",
+       fill = "Scale", colour = "Scale") +
+  scale_fill_manual(values = my_pal) +
+  scale_color_manual(values = my_pal)
-

+

diff --git a/docs/index_files/figure-html/unnamed-chunk-15-1.png b/docs/index_files/figure-html/unnamed-chunk-15-1.png deleted file mode 100644 index 65db8cb..0000000 Binary files a/docs/index_files/figure-html/unnamed-chunk-15-1.png and /dev/null differ diff --git a/docs/index_files/figure-html/unnamed-chunk-16-1.png b/docs/index_files/figure-html/unnamed-chunk-16-1.png index 66d63ee..65db8cb 100644 Binary files a/docs/index_files/figure-html/unnamed-chunk-16-1.png and b/docs/index_files/figure-html/unnamed-chunk-16-1.png differ diff --git a/docs/index_files/figure-html/unnamed-chunk-17-1.png b/docs/index_files/figure-html/unnamed-chunk-17-1.png new file mode 100644 index 0000000..66d63ee Binary files /dev/null and b/docs/index_files/figure-html/unnamed-chunk-17-1.png differ diff --git a/docs/search.json b/docs/search.json index 80481fe..8ffc7dd 100644 --- a/docs/search.json +++ b/docs/search.json @@ -26,7 +26,7 @@ "href": "index.html#extracting-land-cover-data", "title": "Land Cover Analysis", "section": "Extracting Land Cover data", - "text": "Extracting Land Cover data\nThe following functions will take care of land cover extraction for sites.\n\nextract_from_points <- function(scale_m, sites, lu) {\n \n sites_buffer <- sites |>\n sf::st_transform(sf::st_crs(lu)) |> \n sf::st_buffer(dist = scale_m) |> \n dplyr::select(fullID)\n \n extr <- exactextractr::exact_extract(lu, sites_buffer,\n progress = FALSE,\n include_cols = \"fullID\")\n \n extr <- mapply(extr, 1:length(extr), \n FUN = \\(x, y) dplyr::mutate(x, id = y),\n SIMPLIFY = F)\n \n extr_df <- do.call(rbind, extr) |>\n dplyr::filter(!is.na(value)) |>\n dplyr::relocate(id)\n \n return(extr_df)\n \n}\n\ncompute_land_cover <- function(scale_m, sites, \n lu_16, lu_17, lu_dat,\n summarise_all = TRUE) {\n \n extr_16_df <- extract_from_points(scale_m, sites, lu_16)\n extr_17_df <- extract_from_points(scale_m, sites, lu_17)\n \n stopifnot(all(!(extr_16_df$siteID %in% extr_17_df$siteID)))\n \n extr <- rbind(extr_16_df, extr_17_df) |>\n dplyr::arrange(id, value)\n \n if (summarise_all) {\n \n extr_table <- extr |>\n dplyr::group_by(value) |>\n dplyr::summarise(coverage_fraction_sum = sum(coverage_fraction)) |>\n dplyr::mutate(prop = \n coverage_fraction_sum/sum(coverage_fraction_sum)) |>\n dplyr::ungroup() |>\n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::select(category_code, prop, label)\n \n } else {\n \n extr_table <- extr |>\n dplyr::group_by(fullID, value) |>\n dplyr::summarise(coverage_fraction_sum = sum(coverage_fraction)) |>\n dplyr::mutate(prop = \n coverage_fraction_sum/sum(coverage_fraction_sum)) |>\n dplyr::ungroup() |>\n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::select(fullID, category_code, prop, label)\n \n }\n \n extr_table[is.na(extr_table)] <- 0\n \n return(extr_table)\n \n}\n\nWe extract at different scales (buffer radius around points): 1 m, 50 m, 100 m and 1 km.\n\nres_points <- mapply(FUN = compute_land_cover, \n c(`1 m` = 1, `50 m` = 50,\n `100 m` = 100, `1 km` = 1000),\n MoreArgs = list(\n sites = sites_possible,\n lu_16 = lu_16, lu_17 = lu_17, lu_dat = lu_dat),\n SIMPLIFY = F) |>\n dplyr::bind_rows(.id = 'scale') |>\n dplyr::mutate(scale = forcats::fct_relevel(scale, \"1 m\", \"50 m\",\n \"100 m\", \"1 km\"),\n label = forcats::fct_reorder(label, prop)) |> \n dplyr::arrange(scale, dplyr::desc(prop))\n\nknitr::kable(res_points)\n\n\n\n\nscale\ncategory_code\nprop\nlabel\n\n\n\n\n1 m\nTrBOG\n0.26\nTreed Bog\n\n\n1 m\nTrFEN\n0.23\nTreed Fen\n\n\n1 m\nOBOG\n0.20\nOpen Bog\n\n\n1 m\nConSWA\n0.11\nConiferous Swamp\n\n\n1 m\nConTRE\n0.10\nConiferous Treed\n\n\n1 m\nOFEN\n0.06\nOpen Fen\n\n\n1 m\nSpTRE\n0.02\nSparse Treed\n\n\n1 m\nMixTRE\n0.02\nMixed Treed\n\n\n50 m\nTrBOG\n0.23\nTreed Bog\n\n\n50 m\nTrFEN\n0.22\nTreed Fen\n\n\n50 m\nOBOG\n0.21\nOpen Bog\n\n\n50 m\nConSWA\n0.12\nConiferous Swamp\n\n\n50 m\nConTRE\n0.09\nConiferous Treed\n\n\n50 m\nOFEN\n0.07\nOpen Fen\n\n\n50 m\nSpTRE\n0.03\nSparse Treed\n\n\n50 m\nMixTRE\n0.02\nMixed Treed\n\n\n50 m\nWAT\n0.01\nClear Open Water\n\n\n50 m\nXWAT\n0.00\nTurbid Water\n\n\n100 m\nTrBOG\n0.23\nTreed Bog\n\n\n100 m\nTrFEN\n0.22\nTreed Fen\n\n\n100 m\nOBOG\n0.20\nOpen Bog\n\n\n100 m\nConSWA\n0.12\nConiferous Swamp\n\n\n100 m\nConTRE\n0.10\nConiferous Treed\n\n\n100 m\nOFEN\n0.08\nOpen Fen\n\n\n100 m\nWAT\n0.03\nClear Open Water\n\n\n100 m\nSpTRE\n0.02\nSparse Treed\n\n\n100 m\nMixTRE\n0.01\nMixed Treed\n\n\n100 m\nXWAT\n0.01\nTurbid Water\n\n\n1 km\nTrFEN\n0.21\nTreed Fen\n\n\n1 km\nTrBOG\n0.21\nTreed Bog\n\n\n1 km\nOBOG\n0.19\nOpen Bog\n\n\n1 km\nConSWA\n0.17\nConiferous Swamp\n\n\n1 km\nOFEN\n0.07\nOpen Fen\n\n\n1 km\nConTRE\n0.06\nConiferous Treed\n\n\n1 km\nWAT\n0.04\nClear Open Water\n\n\n1 km\nMixTRE\n0.01\nMixed Treed\n\n\n1 km\nXWAT\n0.01\nTurbid Water\n\n\n1 km\nThSWA\n0.01\nThicket Swamp\n\n\n1 km\nSpTRE\n0.00\nSparse Treed\n\n\n1 km\nNSWood\n0.00\nDisturbance - Non and Sparse Woody\n\n\n1 km\nDecTRE\n0.00\nDeciduous Treed\n\n\n1 km\nTrOrSHr\n0.00\nDisturbance - Treed and/or Shrub\n\n\n1 km\nBED\n0.00\nBedrock\n\n\n\n\n\nWe also want to do the same operation for the ecodistrict to allow for comparison. We don’t need to use exact extraction, insteadt the crop and mask each raster. This operation is costly so we write out the rasters and load them again (see unrendered code).\n\necodistrict_16 <- sf::st_transform(ecodistrict, sf::st_crs(lu_16))\necodistrict_17 <- sf::st_transform(ecodistrict, sf::st_crs(lu_17))\n\nlu_16_crop <- raster::crop(lu_16, ecodistrict_16)\nlu_16_crop_mask <- raster::mask(lu_16_crop, ecodistrict_16)\n\nlu_17_crop <- raster::crop(lu_17, ecodistrict_17)\nlu_17_crop_mask <- raster::mask(lu_17_crop, ecodistrict_17)\n\nWe can then get the frequencies of values. This operation is also costly so we write out the objects and load them again (see unrendered code).\n\nlu_16_freq <- raster::freq(lu_16_crop_mask)\nlu_17_freq <- raster::freq(lu_17_crop_mask)\n\nWe combine the results of both UTMs.\n\nres_ecodistrict <- rbind(lu_16_freq, lu_17_freq) |>\n as.data.frame() |> \n dplyr::group_by(value) |> \n dplyr::summarise(count = sum(count)) |> \n dplyr::ungroup() |> \n dplyr::filter(!is.na(value)) |> \n dplyr::mutate(prop = count/sum(count)) |> \n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::filter(!is.na(label)) |> \n dplyr::select(category_code, prop, label) |> \n dplyr::mutate(scale = \"Ecodistrict\") |> \n dplyr::relocate(scale) |>\n dplyr::arrange(scale, dplyr::desc(prop))\n\nknitr::kable(res_ecodistrict)\n\n\n\n\nscale\ncategory_code\nprop\nlabel\n\n\n\n\nEcodistrict\nTrFEN\n0.25\nTreed Fen\n\n\nEcodistrict\nOBOG\n0.20\nOpen Bog\n\n\nEcodistrict\nTrBOG\n0.19\nTreed Bog\n\n\nEcodistrict\nConSWA\n0.12\nConiferous Swamp\n\n\nEcodistrict\nOFEN\n0.09\nOpen Fen\n\n\nEcodistrict\nWAT\n0.07\nClear Open Water\n\n\nEcodistrict\nConTRE\n0.04\nConiferous Treed\n\n\nEcodistrict\nNSWood\n0.01\nDisturbance - Non and Sparse Woody\n\n\nEcodistrict\nTrOrSHr\n0.01\nDisturbance - Treed and/or Shrub\n\n\nEcodistrict\nMixTRE\n0.01\nMixed Treed\n\n\nEcodistrict\nThSWA\n0.01\nThicket Swamp\n\n\nEcodistrict\nSpTRE\n0.00\nSparse Treed\n\n\nEcodistrict\nXWAT\n0.00\nTurbid Water\n\n\nEcodistrict\nDecTRE\n0.00\nDeciduous Treed\n\n\nEcodistrict\nMIN\n0.00\nSand/Gravel/Mine Tailings\n\n\nEcodistrict\nFrMAR\n0.00\nFreshwater Marsh\n\n\nEcodistrict\nBED\n0.00\nBedrock\n\n\nEcodistrict\nURB\n0.00\nCommunity/Infrastructure\n\n\nEcodistrict\nDecSWA\n0.00\nDeciduous Swamp\n\n\nEcodistrict\nInMAR\n0.00\nIntertidal Marsh\n\n\n\n\n\nAnd then combine the results between scales and utm.\n\nres <- rbind(res_points, res_ecodistrict) |> \n tidyr::complete(scale, label) |> \n tidyr::replace_na(list(prop = 0)) |> \n dplyr::mutate(label = forcats::fct_reorder(label, prop))\n\nFor individual site identity, at different scales:\n\nres_points_by_site <- \n mapply(FUN = compute_land_cover, \n c(`1 m` = 1, `50 m` = 50,\n `100 m` = 100, `1 km` = 1000),\n MoreArgs = list(\n sites = sites_possible,\n lu_16 = lu_16, lu_17 = lu_17, lu_dat = lu_dat),\n summarise_all = FALSE,\n SIMPLIFY = F) |>\n dplyr::bind_rows(.id = 'scale') |>\n dplyr::mutate(scale = forcats::fct_relevel(scale, \"1 m\", \"50 m\",\n \"100 m\", \"1 km\"),\n label = forcats::fct_reorder(label, prop)) |>\n \n dplyr::group_by(scale, fullID) |> \n dplyr::arrange(dplyr::desc(prop)) |> \n dplyr::rename(primary_category_code = category_code,\n primary_prop = prop,\n primary_label = label) |> \n dplyr::mutate(secondary_category_code = primary_category_code[2],\n secondary_prop = primary_prop[2],\n secondary_label = primary_label[2],\n prop_sum = primary_prop + secondary_prop) |> \n dplyr::slice(1) |> \n dplyr::ungroup() |> \n dplyr::arrange(fullID)\n\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n\nDT::datatable(res_points_by_site)", + "text": "Extracting Land Cover data\nThe following functions will take care of land cover extraction for sites.\n\nextract_from_points <- function(scale_m, sites, lu) {\n \n sites_buffer <- sites |>\n sf::st_transform(sf::st_crs(lu)) |> \n sf::st_buffer(dist = scale_m) |> \n dplyr::select(fullID)\n \n extr <- exactextractr::exact_extract(lu, sites_buffer,\n progress = FALSE,\n include_cols = \"fullID\")\n \n extr <- mapply(extr, 1:length(extr), \n FUN = \\(x, y) dplyr::mutate(x, id = y),\n SIMPLIFY = F)\n \n extr_df <- do.call(rbind, extr) |>\n dplyr::filter(!is.na(value)) |>\n dplyr::relocate(id)\n \n return(extr_df)\n \n}\n\ncompute_land_cover <- function(scale_m, sites, \n lu_16, lu_17, lu_dat,\n summarise_all = TRUE) {\n \n extr_16_df <- extract_from_points(scale_m, sites, lu_16)\n extr_17_df <- extract_from_points(scale_m, sites, lu_17)\n \n stopifnot(all(!(extr_16_df$siteID %in% extr_17_df$siteID)))\n \n extr <- rbind(extr_16_df, extr_17_df) |>\n dplyr::arrange(id, value)\n \n if (summarise_all) {\n \n extr_table <- extr |>\n dplyr::group_by(value) |>\n dplyr::summarise(coverage_fraction_sum = sum(coverage_fraction)) |>\n dplyr::mutate(prop = \n coverage_fraction_sum/sum(coverage_fraction_sum)) |>\n dplyr::ungroup() |>\n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::select(category_code, prop, label)\n \n } else {\n \n extr_table <- extr |>\n dplyr::group_by(fullID, value) |>\n dplyr::summarise(coverage_fraction_sum = sum(coverage_fraction)) |>\n dplyr::mutate(prop = \n coverage_fraction_sum/sum(coverage_fraction_sum)) |>\n dplyr::ungroup() |>\n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::select(fullID, category_code, prop, label)\n \n }\n \n extr_table[is.na(extr_table)] <- 0\n \n return(extr_table)\n \n}\n\nWe extract at different scales (buffer radius around points): 1 m, 50 m, 100 m and 1 km.\n\nres_points <- mapply(FUN = compute_land_cover, \n c(`1 m` = 1, `50 m` = 50,\n `100 m` = 100, `1 km` = 1000),\n MoreArgs = list(\n sites = sites_possible,\n lu_16 = lu_16, lu_17 = lu_17, lu_dat = lu_dat),\n SIMPLIFY = F) |>\n dplyr::bind_rows(.id = 'scale') |>\n dplyr::mutate(scale = forcats::fct_relevel(scale, \"1 m\", \"50 m\",\n \"100 m\", \"1 km\"),\n label = forcats::fct_reorder(label, prop)) |> \n dplyr::arrange(scale, dplyr::desc(prop))\n\nknitr::kable(res_points)\n\n\n\n\nscale\ncategory_code\nprop\nlabel\n\n\n\n\n1 m\nTrBOG\n0.26\nTreed Bog\n\n\n1 m\nTrFEN\n0.23\nTreed Fen\n\n\n1 m\nOBOG\n0.20\nOpen Bog\n\n\n1 m\nConSWA\n0.11\nConiferous Swamp\n\n\n1 m\nConTRE\n0.10\nConiferous Treed\n\n\n1 m\nOFEN\n0.06\nOpen Fen\n\n\n1 m\nSpTRE\n0.02\nSparse Treed\n\n\n1 m\nMixTRE\n0.02\nMixed Treed\n\n\n50 m\nTrBOG\n0.23\nTreed Bog\n\n\n50 m\nTrFEN\n0.22\nTreed Fen\n\n\n50 m\nOBOG\n0.21\nOpen Bog\n\n\n50 m\nConSWA\n0.12\nConiferous Swamp\n\n\n50 m\nConTRE\n0.09\nConiferous Treed\n\n\n50 m\nOFEN\n0.07\nOpen Fen\n\n\n50 m\nSpTRE\n0.03\nSparse Treed\n\n\n50 m\nMixTRE\n0.02\nMixed Treed\n\n\n50 m\nWAT\n0.01\nClear Open Water\n\n\n50 m\nXWAT\n0.00\nTurbid Water\n\n\n100 m\nTrBOG\n0.23\nTreed Bog\n\n\n100 m\nTrFEN\n0.22\nTreed Fen\n\n\n100 m\nOBOG\n0.20\nOpen Bog\n\n\n100 m\nConSWA\n0.12\nConiferous Swamp\n\n\n100 m\nConTRE\n0.10\nConiferous Treed\n\n\n100 m\nOFEN\n0.08\nOpen Fen\n\n\n100 m\nWAT\n0.03\nClear Open Water\n\n\n100 m\nSpTRE\n0.02\nSparse Treed\n\n\n100 m\nMixTRE\n0.01\nMixed Treed\n\n\n100 m\nXWAT\n0.01\nTurbid Water\n\n\n1 km\nTrFEN\n0.21\nTreed Fen\n\n\n1 km\nTrBOG\n0.21\nTreed Bog\n\n\n1 km\nOBOG\n0.19\nOpen Bog\n\n\n1 km\nConSWA\n0.17\nConiferous Swamp\n\n\n1 km\nOFEN\n0.07\nOpen Fen\n\n\n1 km\nConTRE\n0.06\nConiferous Treed\n\n\n1 km\nWAT\n0.04\nClear Open Water\n\n\n1 km\nMixTRE\n0.01\nMixed Treed\n\n\n1 km\nXWAT\n0.01\nTurbid Water\n\n\n1 km\nThSWA\n0.01\nThicket Swamp\n\n\n1 km\nSpTRE\n0.00\nSparse Treed\n\n\n1 km\nNSWood\n0.00\nDisturbance - Non and Sparse Woody\n\n\n1 km\nDecTRE\n0.00\nDeciduous Treed\n\n\n1 km\nTrOrSHr\n0.00\nDisturbance - Treed and/or Shrub\n\n\n1 km\nBED\n0.00\nBedrock\n\n\n\n\n\nWe also want to do the same operation for the ecodistrict to allow for comparison. We don’t need to use exact extraction, insteadt the crop and mask each raster. This operation is costly so we write out the rasters and load them again (see unrendered code).\n\necodistrict_16 <- sf::st_transform(ecodistrict, sf::st_crs(lu_16))\necodistrict_17 <- sf::st_transform(ecodistrict, sf::st_crs(lu_17))\n\nlu_16_crop <- raster::crop(lu_16, ecodistrict_16)\nlu_16_crop_mask <- raster::mask(lu_16_crop, ecodistrict_16)\n\nlu_17_crop <- raster::crop(lu_17, ecodistrict_17)\nlu_17_crop_mask <- raster::mask(lu_17_crop, ecodistrict_17)\n\nWe can then get the frequencies of values. This operation is also costly so we write out the objects and load them again (see unrendered code).\n\nlu_16_freq <- raster::freq(lu_16_crop_mask)\nlu_17_freq <- raster::freq(lu_17_crop_mask)\n\nWe combine the results of both UTMs.\n\nres_ecodistrict <- rbind(lu_16_freq, lu_17_freq) |>\n as.data.frame() |> \n dplyr::group_by(value) |> \n dplyr::summarise(count = sum(count)) |> \n dplyr::ungroup() |> \n dplyr::filter(!is.na(value)) |> \n dplyr::mutate(prop = count/sum(count)) |> \n dplyr::mutate(value = as.factor(value)) |>\n dplyr::left_join(lu_dat, by = c(\"value\" = \"cats\")) |>\n dplyr::filter(!is.na(label)) |> \n dplyr::select(category_code, prop, label) |> \n dplyr::mutate(scale = \"Ecodistrict\") |> \n dplyr::relocate(scale) |>\n dplyr::arrange(scale, dplyr::desc(prop))\n\nknitr::kable(res_ecodistrict)\n\n\n\n\nscale\ncategory_code\nprop\nlabel\n\n\n\n\nEcodistrict\nTrFEN\n0.25\nTreed Fen\n\n\nEcodistrict\nOBOG\n0.20\nOpen Bog\n\n\nEcodistrict\nTrBOG\n0.19\nTreed Bog\n\n\nEcodistrict\nConSWA\n0.12\nConiferous Swamp\n\n\nEcodistrict\nOFEN\n0.09\nOpen Fen\n\n\nEcodistrict\nWAT\n0.07\nClear Open Water\n\n\nEcodistrict\nConTRE\n0.04\nConiferous Treed\n\n\nEcodistrict\nNSWood\n0.01\nDisturbance - Non and Sparse Woody\n\n\nEcodistrict\nTrOrSHr\n0.01\nDisturbance - Treed and/or Shrub\n\n\nEcodistrict\nMixTRE\n0.01\nMixed Treed\n\n\nEcodistrict\nThSWA\n0.01\nThicket Swamp\n\n\nEcodistrict\nSpTRE\n0.00\nSparse Treed\n\n\nEcodistrict\nXWAT\n0.00\nTurbid Water\n\n\nEcodistrict\nDecTRE\n0.00\nDeciduous Treed\n\n\nEcodistrict\nMIN\n0.00\nSand/Gravel/Mine Tailings\n\n\nEcodistrict\nFrMAR\n0.00\nFreshwater Marsh\n\n\nEcodistrict\nBED\n0.00\nBedrock\n\n\nEcodistrict\nURB\n0.00\nCommunity/Infrastructure\n\n\nEcodistrict\nDecSWA\n0.00\nDeciduous Swamp\n\n\nEcodistrict\nInMAR\n0.00\nIntertidal Marsh\n\n\n\n\n\nAnd then combine the results between scales and utm.\n\nres <- rbind(res_points, res_ecodistrict) |> \n tidyr::complete(scale, label) |> \n tidyr::replace_na(list(prop = 0)) |> \n dplyr::mutate(label = forcats::fct_reorder(label, prop))\n\nFor individual site identity, at different scales:\n\nres_points_by_site <- \n mapply(FUN = compute_land_cover, \n c(`1 m` = 1, `50 m` = 50,\n `100 m` = 100, `1 km` = 1000),\n MoreArgs = list(\n sites = sites_possible,\n lu_16 = lu_16, lu_17 = lu_17, lu_dat = lu_dat),\n summarise_all = FALSE,\n SIMPLIFY = F) |>\n dplyr::bind_rows(.id = 'scale') |>\n dplyr::mutate(scale = forcats::fct_relevel(scale, \"1 m\", \"50 m\",\n \"100 m\", \"1 km\"),\n label = forcats::fct_reorder(label, prop)) |>\n \n dplyr::group_by(scale, fullID) |> \n dplyr::arrange(dplyr::desc(prop)) |> \n dplyr::rename(primary_category_code = category_code,\n primary_prop = prop,\n primary_label = label) |> \n dplyr::mutate(secondary_category_code = primary_category_code[2],\n secondary_prop = primary_prop[2],\n secondary_label = primary_label[2],\n prop_sum = primary_prop + secondary_prop) |> \n dplyr::slice(1) |> \n dplyr::ungroup() |> \n dplyr::arrange(fullID)\n\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n`summarise()` has grouped output by 'fullID'. You can override using the\n`.groups` argument.\n\nDT::datatable(res_points_by_site)\n\n\n\n\n\nWe save this table.\n\nreadr::write_csv(res_points_by_site, \"outputs/res_points_by_site.csv\")", "crumbs": [ "Site Analysis", "Land Cover Analysis" diff --git a/index.qmd b/index.qmd index b2c5a5f..2396815 100644 --- a/index.qmd +++ b/index.qmd @@ -253,6 +253,12 @@ res_points_by_site <- DT::datatable(res_points_by_site) ``` +We save this table. + +```{r} +readr::write_csv(res_points_by_site, "outputs/res_points_by_site.csv") +``` + ## Results We can plot the results with "dodged" ggplot2 barplots. diff --git a/outputs/res_points_by_site.csv b/outputs/res_points_by_site.csv new file mode 100644 index 0000000..219176a --- /dev/null +++ b/outputs/res_points_by_site.csv @@ -0,0 +1,201 @@ +scale,fullID,primary_category_code,primary_prop,primary_label,secondary_category_code,secondary_prop,secondary_label,prop_sum +1 m,P094-5_85_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +50 m,P094-5_85_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.9447561697266259,Open Fen,OBOG,0.05524383027337415,Open Bog,1 +100 m,P094-5_85_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.7690451661973566,Open Fen,OBOG,0.2309548338026434,Open Bog,1 +1 km,P094-5_85_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.48754582704424565,Open Fen,OBOG,0.4310945417953735,Open Bog,0.9186403688396192 +1 m,P095-3_70_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +50 m,P095-3_70_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +100 m,P095-3_70_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.8966262806258004,Coniferous Treed,WAT,0.08051196647988278,Clear Open Water,0.9771382471056832 +1 km,P095-3_70_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.6257363120632063,Coniferous Swamp,ConTRE,0.17754282555657366,Coniferous Treed,0.80327913761978 +1 m,P115-2_113_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.656434673314019,Coniferous Swamp,TrFEN,0.343565326685981,Treed Fen,1 +50 m,P115-2_113_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.7155084452511601,Treed Fen,ConSWA,0.2844915547488399,Coniferous Swamp,1 +100 m,P115-2_113_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.660649875292667,Treed Fen,TrBOG,0.17008669942384178,Treed Bog,0.8307365747165089 +1 km,P115-2_113_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.3147646184303558,Open Bog,TrBOG,0.21189442943193706,Treed Bog,0.5266590478622929 +1 m,P121-1_79_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P121-1_79_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +100 m,P121-1_79_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +1 km,P121-1_79_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5207363380068764,Open Bog,ConSWA,0.20701824911039232,Coniferous Swamp,0.7277545871172687 +1 m,P121-3_81_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P121-3_81_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.4019507423297938,Coniferous Treed,ConSWA,0.37954324837458714,Coniferous Swamp,0.781493990704381 +100 m,P121-3_81_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.41235415743872117,Coniferous Swamp,ConTRE,0.34099687548732327,Coniferous Treed,0.7533510329260444 +1 km,P121-3_81_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.41750034137864944,Coniferous Treed,ConSWA,0.4099522856928798,Coniferous Swamp,0.8274526270715292 +1 m,P145-2_128_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P145-2_128_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9309747706209678,Open Bog,TrBOG,0.06902522937903227,Treed Bog,1 +100 m,P145-2_128_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.7170344858475638,Open Bog,TrBOG,0.2829655141524362,Treed Bog,1 +1 km,P145-2_128_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.7889585068687139,Open Bog,TrBOG,0.2066145083159987,Treed Bog,0.9955730151847126 +1 m,P145-3_129_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P145-3_129_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8245997451923592,Treed Bog,OBOG,0.17540025480764074,Open Bog,1 +100 m,P145-3_129_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.6728592016030076,Treed Bog,OBOG,0.32714079839699234,Open Bog,1 +1 km,P145-3_129_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.6991929191760028,Open Bog,TrBOG,0.24957227313302585,Treed Bog,0.9487651923090287 +1 m,P154-1_94_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P154-1_94_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.5691164229559377,Treed Bog,OBOG,0.43088357704406227,Open Bog,1 +100 m,P154-1_94_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5460312509818893,Open Bog,TrBOG,0.45047295840775214,Treed Bog,0.9965042093896415 +1 km,P154-1_94_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.379343265837591,Open Bog,TrBOG,0.25561746277115643,Treed Bog,0.6349607286087474 +1 m,P158-4_106_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P158-4_106_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +100 m,P158-4_106_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9996753446401393,Open Bog,TrBOG,3.2465535986067633e-4,Treed Bog,1 +1 km,P158-4_106_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5293222782939174,Open Bog,TrBOG,0.38515665385011977,Treed Bog,0.9144789321440372 +1 m,P161-1_119_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P161-1_119_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9942519949194426,Open Bog,OFEN,0.005748005080557367,Open Fen,1 +100 m,P161-1_119_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.7281799645513138,Open Bog,OFEN,0.22776427894696072,Open Fen,0.9559442434982746 +1 km,P161-1_119_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.2985952677013513,Open Fen,TrBOG,0.23140291243970484,Treed Bog,0.5299981801410562 +1 m,P176-1_62_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P176-1_62_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +100 m,P176-1_62_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +1 km,P176-1_62_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.3326431934615349,Open Bog,OFEN,0.27452319543688947,Open Fen,0.6071663888984244 +1 m,P200-1_90_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P200-1_90_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +100 m,P200-1_90_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.9363415304085482,Treed Bog,ConSWA,0.06365846959145179,Coniferous Swamp,1 +1 km,P200-1_90_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.4775778044973864,Coniferous Swamp,ConTRE,0.23456412668276008,Coniferous Treed,0.7121419311801465 +1 m,P218-5_77_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P218-5_77_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.9769213778942012,Treed Bog,TrFEN,0.023078622105798804,Treed Fen,1 +100 m,P218-5_77_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.7973879448989714,Treed Bog,TrFEN,0.2026117150737094,Treed Fen,0.9999996599726808 +1 km,P218-5_77_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.33957606029386234,Treed Bog,OBOG,0.3363142163757261,Open Bog,0.6758902766695885 +1 m,P218-6_78_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P218-6_78_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9176491676621279,Open Bog,TrBOG,0.08235083233787209,Treed Bog,1 +100 m,P218-6_78_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5850776121289241,Open Bog,TrBOG,0.39360277508381664,Treed Bog,0.9786803872127408 +1 km,P218-6_78_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.5223092570591706,Treed Bog,OBOG,0.19850545857962668,Open Bog,0.7208147156387973 +1 m,P219-7_89_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P219-7_89_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +100 m,P219-7_89_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.9750712186331868,Treed Fen,TrBOG,0.02492878136681321,Treed Bog,1 +1 km,P219-7_89_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.42783718840039353,Treed Fen,TrBOG,0.31307332847546754,Treed Bog,0.7409105168758611 +1 m,P229-2_2_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P229-2_2_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8315830757132978,Treed Bog,OBOG,0.12214134545757437,Open Bog,0.9537244211708722 +100 m,P229-2_2_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.7512203359057626,Treed Bog,OBOG,0.1587546744831235,Open Bog,0.9099750103888862 +1 km,P229-2_2_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.39991347668578825,Treed Bog,OBOG,0.31662007094588046,Open Bog,0.7165335476316688 +1 m,P237-2_6_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +50 m,P237-2_6_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.9999162167992528,Coniferous Swamp,WAT,8.378320074717227e-5,Clear Open Water,1 +100 m,P237-2_6_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.8534242181186054,Coniferous Swamp,WAT,0.14390459540048078,Clear Open Water,0.9973288135190861 +1 km,P237-2_6_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.35813852167472415,Coniferous Swamp,TrBOG,0.32151125761053145,Treed Bog,0.6796497792852556 +1 m,P238-2_116_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P238-2_116_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.6208284696458658,Open Bog,TrBOG,0.23989188991189384,Treed Bog,0.8607203595577596 +100 m,P238-2_116_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.6759833797123772,Open Bog,OFEN,0.16861248470397394,Open Fen,0.8445958644163511 +1 km,P238-2_116_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.3158135276785617,Treed Bog,OBOG,0.3009461726090783,Open Bog,0.6167597002876399 +1 m,P245-1_9_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +50 m,P245-1_9_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.7702218795182217,Coniferous Swamp,TrFEN,0.22977812048177823,Treed Fen,1 +100 m,P245-1_9_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.7247630599457523,Coniferous Swamp,TrFEN,0.27523694005424765,Treed Fen,1 +1 km,P245-1_9_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.34102793291665695,Coniferous Swamp,TrBOG,0.24790948653518596,Treed Bog,0.5889374194518429 +1 m,P245-3_11_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +50 m,P245-3_11_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +100 m,P245-3_11_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +1 km,P245-3_11_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.46437134800885754,Open Fen,OBOG,0.32461491499029865,Open Bog,0.7889862629991562 +1 m,P246-2_14_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P246-2_14_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.9360918914696712,Treed Bog,ConSWA,0.06390810853032881,Coniferous Swamp,1 +100 m,P246-2_14_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.7337536832397213,Treed Bog,ConSWA,0.26624631676027866,Coniferous Swamp,1 +1 km,P246-2_14_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5164913413961422,Open Bog,TrBOG,0.2748820544850199,Treed Bog,0.7913733958811621 +1 m,P246-4_16_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P246-4_16_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5665571235152759,Open Bog,OFEN,0.4334428764847241,Open Fen,1 +100 m,P246-4_16_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.6626346939655747,Open Fen,OBOG,0.3373653060344253,Open Bog,1 +1 km,P246-4_16_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.44497304998565546,Open Fen,OBOG,0.35239961236974676,Open Bog,0.7973726623554023 +1 m,P258-2_51_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +50 m,P258-2_51_GRTS_PossibleCaARU_sample_draw_base,OFEN,1,Open Fen,NA,NA,NA,NA +100 m,P258-2_51_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.8763959606453335,Open Fen,OBOG,0.09989117330927183,Open Bog,0.9762871339546053 +1 km,P258-2_51_GRTS_PossibleCaARU_sample_draw_base,OFEN,0.4910649149153572,Open Fen,OBOG,0.21124454212392874,Open Bog,0.7023094570392859 +1 m,P264-2_108_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P264-2_108_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.912509744549718,Treed Fen,OFEN,0.087490255450282,Open Fen,1 +100 m,P264-2_108_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.823485817844887,Treed Fen,OFEN,0.17651418215511308,Open Fen,1 +1 km,P264-2_108_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.35066467305007504,Treed Fen,TrBOG,0.22056245276308878,Treed Bog,0.5712271258131638 +1 m,P273-2_18_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P273-2_18_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.9490064935754284,Treed Fen,XWAT,0.05099350642457159,Turbid Water,1 +100 m,P273-2_18_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.7089699921423532,Treed Fen,XWAT,0.2544463315538566,Turbid Water,0.9634163236962099 +1 km,P273-2_18_GRTS_PossibleCaARU_sample_draw_base,XWAT,0.4082508931157951,Turbid Water,TrFEN,0.25670301878146956,Treed Fen,0.6649539118972647 +1 m,P273-4_20_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +50 m,P273-4_20_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.9336268605433374,Coniferous Swamp,TrFEN,0.06637313945666252,Treed Fen,1 +100 m,P273-4_20_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.8118643150171135,Coniferous Swamp,TrFEN,0.18813568498288646,Treed Fen,1 +1 km,P273-4_20_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.3601331976794881,Treed Fen,ConSWA,0.2328694785123921,Coniferous Swamp,0.5930026761918802 +1 m,P284-1_21_GRTS_PossibleCaARU_sample_draw_base,SpTRE,1,Sparse Treed,NA,NA,NA,NA +50 m,P284-1_21_GRTS_PossibleCaARU_sample_draw_base,SpTRE,0.9161766192542022,Sparse Treed,MixTRE,0.06499662828631897,Mixed Treed,0.9811732475405213 +100 m,P284-1_21_GRTS_PossibleCaARU_sample_draw_base,SpTRE,0.45702482270103106,Sparse Treed,ConTRE,0.2486614927003927,Coniferous Treed,0.7056863154014238 +1 km,P284-1_21_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.2102651785169245,Coniferous Swamp,ConTRE,0.18597732678006318,Coniferous Treed,0.3962425052969877 +1 m,P284-2_22_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P284-2_22_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.9790072283496309,Treed Fen,ConSWA,0.020992771650369113,Coniferous Swamp,1 +100 m,P284-2_22_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.8953310260193018,Treed Fen,ConSWA,0.0796313208700898,Coniferous Swamp,0.9749623468893917 +1 km,P284-2_22_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.33195623482688696,Treed Bog,ConSWA,0.25768603067775114,Coniferous Swamp,0.589642265504638 +1 m,P284-4_24_GRTS_PossibleCaARU_sample_draw_base,MixTRE,1,Mixed Treed,NA,NA,NA,NA +50 m,P284-4_24_GRTS_PossibleCaARU_sample_draw_base,MixTRE,0.6971443838894176,Mixed Treed,ConTRE,0.30285561611058237,Coniferous Treed,1 +100 m,P284-4_24_GRTS_PossibleCaARU_sample_draw_base,MixTRE,0.5248999426451121,Mixed Treed,ConTRE,0.43773976957686517,Coniferous Treed,0.9626397122219772 +1 km,P284-4_24_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.18366904570317838,Treed Bog,MixTRE,0.1786309224779519,Mixed Treed,0.3622999681811303 +1 m,P295-3_55_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +50 m,P295-3_55_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +100 m,P295-3_55_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.9865014925308359,Coniferous Treed,TrFEN,0.0115166080935228,Treed Fen,0.9980181006243587 +1 km,P295-3_55_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.24554478119154896,Treed Bog,ConTRE,0.223605199376902,Coniferous Treed,0.4691499805684509 +1 m,P302-3_60_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,P302-3_60_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.829995982771841,Treed Bog,TrFEN,0.170004017228159,Treed Fen,1 +100 m,P302-3_60_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.5762589685648262,Treed Bog,TrFEN,0.4237410314351739,Treed Fen,1 +1 km,P302-3_60_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.8555251865850169,Treed Fen,TrBOG,0.12283428881435189,Treed Bog,0.9783594753993687 +1 m,P302-8_61_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P302-8_61_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +100 m,P302-8_61_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +1 km,P302-8_61_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.5884537365132327,Treed Fen,TrBOG,0.21784293902981738,Treed Bog,0.8062966755430501 +1 m,P311-1_25_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P311-1_25_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.9135231894027439,Treed Fen,WAT,0.08647681059725608,Clear Open Water,1 +100 m,P311-1_25_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.743475740476652,Treed Fen,WAT,0.256524259523348,Clear Open Water,1 +1 km,P311-1_25_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.7097074635036,Treed Fen,WAT,0.11826630343012241,Clear Open Water,0.8279737669337225 +1 m,P311-2_26_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P311-2_26_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.7706918269413361,Treed Fen,TrBOG,0.22930817305866394,Treed Bog,1 +100 m,P311-2_26_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.6312469535068936,Treed Fen,TrBOG,0.31343507351513683,Treed Bog,0.9446820270220304 +1 km,P311-2_26_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.5149075875194441,Treed Fen,ConSWA,0.22190422431941145,Coniferous Swamp,0.7368118118388556 +1 m,P323-3_29_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,P323-3_29_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.8149645281520322,Open Bog,TrBOG,0.18503547184796773,Treed Bog,1 +100 m,P323-3_29_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.607548103205855,Open Bog,TrBOG,0.3924518967941451,Treed Bog,1 +1 km,P323-3_29_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.3451831878858591,Treed Fen,OBOG,0.20285909708303812,Open Bog,0.5480422849688973 +1 m,P324-6_101_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +50 m,P324-6_101_GRTS_PossibleCaARU_sample_draw_base,SpTRE,0.4624376524901748,Sparse Treed,ConTRE,0.4379448193012902,Coniferous Treed,0.900382471791465 +100 m,P324-6_101_GRTS_PossibleCaARU_sample_draw_base,SpTRE,0.34214607596244617,Sparse Treed,ConTRE,0.3218240377452424,Coniferous Treed,0.6639701137076885 +1 km,P324-6_101_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.281238445895175,Open Bog,ConSWA,0.19277712032485672,Coniferous Swamp,0.4740155662200317 +1 m,P348-1_30_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +50 m,P348-1_30_GRTS_PossibleCaARU_sample_draw_base,WAT,0.4526191901564311,Clear Open Water,ConTRE,0.3393439446197643,Coniferous Treed,0.7919631347761954 +100 m,P348-1_30_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.53796843990094,Coniferous Treed,WAT,0.2641867194461706,Clear Open Water,0.8021551593471106 +1 km,P348-1_30_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.5687833097783098,Treed Fen,ConSWA,0.2809063320250177,Coniferous Swamp,0.8496896418033275 +1 m,P348-2_31_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +50 m,P348-2_31_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +100 m,P348-2_31_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.9733945900935126,Coniferous Swamp,TrFEN,0.026605409906487416,Treed Fen,1 +1 km,P348-2_31_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.4894500863499506,Treed Fen,ConSWA,0.4228841068414847,Coniferous Swamp,0.9123341931914353 +1 m,P348-3_32_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P348-3_32_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +100 m,P348-3_32_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.974921748020706,Treed Fen,ConSWA,0.02507825197929408,Coniferous Swamp,1 +1 km,P348-3_32_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.5140012074978193,Treed Fen,ConSWA,0.40568666444634816,Coniferous Swamp,0.9196878719441675 +1 m,P349-4_37_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P349-4_37_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +100 m,P349-4_37_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +1 km,P349-4_37_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.9487543695686047,Treed Fen,WAT,0.015703740297569754,Clear Open Water,0.9644581098661744 +1 m,P362-1_38_GRTS_PossibleCaARU_sample_draw_base,TrFEN,1,Treed Fen,NA,NA,NA,NA +50 m,P362-1_38_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.999742646632944,Treed Fen,WAT,2.5735336705602044e-4,Clear Open Water,1 +100 m,P362-1_38_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.7904652376130165,Treed Fen,WAT,0.18190327375198312,Clear Open Water,0.9723685113649996 +1 km,P362-1_38_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.2876967376826992,Treed Fen,TrBOG,0.23801122589854584,Treed Bog,0.525707963581245 +1 m,Q618-1_42_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +50 m,Q618-1_42_GRTS_PossibleCaARU_sample_draw_base,ConTRE,1,Coniferous Treed,NA,NA,NA,NA +100 m,Q618-1_42_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.9893168430952137,Coniferous Treed,TrBOG,0.010683156904786256,Treed Bog,1 +1 km,Q618-1_42_GRTS_PossibleCaARU_sample_draw_base,ConTRE,0.5710635704856195,Coniferous Treed,ConSWA,0.21297359331069174,Coniferous Swamp,0.7840371637963113 +1 m,Q618-2_43_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +50 m,Q618-2_43_GRTS_PossibleCaARU_sample_draw_base,ConSWA,1,Coniferous Swamp,NA,NA,NA,NA +100 m,Q618-2_43_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.9308846631851542,Coniferous Swamp,WAT,0.06911533681484582,Clear Open Water,1 +1 km,Q618-2_43_GRTS_PossibleCaARU_sample_draw_base,ConSWA,0.37515805724076845,Coniferous Swamp,TrBOG,0.3051129978370093,Treed Bog,0.6802710550777777 +1 m,Q619-1_131_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,Q619-1_131_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8556578724874464,Treed Bog,ConSWA,0.1443421275125536,Coniferous Swamp,1 +100 m,Q619-1_131_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.7764533955917398,Treed Bog,ConSWA,0.2235466044082603,Coniferous Swamp,1 +1 km,Q619-1_131_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.3864644283670498,Treed Bog,ConSWA,0.18219050542007456,Coniferous Swamp,0.5686549337871244 +1 m,Q619-3_133_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,Q619-3_133_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.9905908612018834,Treed Bog,ConSWA,0.009409138798116574,Coniferous Swamp,1 +100 m,Q619-3_133_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8411816878241943,Treed Bog,ConSWA,0.15881831217580572,Coniferous Swamp,1 +1 km,Q619-3_133_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.3990976543837545,Treed Bog,ConSWA,0.2676438353001541,Coniferous Swamp,0.6667414896839086 +1 m,Q624-4_150_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,Q624-4_150_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.7485945871168274,Treed Bog,OBOG,0.25140541288317264,Open Bog,1 +100 m,Q624-4_150_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.6293882477477931,Treed Bog,OBOG,0.2833163226676207,Open Bog,0.9127045704154138 +1 km,Q624-4_150_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.4096470530621285,Treed Fen,TrBOG,0.21876490355717063,Treed Bog,0.6284119566192992 +1 m,Q628-2_47_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,Q628-2_47_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +100 m,Q628-2_47_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8142047825911943,Treed Bog,TrFEN,0.10902904023767843,Treed Fen,0.9232338228288728 +1 km,Q628-2_47_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.35970605580633597,Open Bog,TrBOG,0.3080274173105141,Treed Bog,0.66773347311685 +1 m,Q629-2_153_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +50 m,Q629-2_153_GRTS_PossibleCaARU_sample_draw_base,TrBOG,1,Treed Bog,NA,NA,NA,NA +100 m,Q629-2_153_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.8874475913255171,Treed Bog,TrFEN,0.1125524086744829,Treed Fen,1 +1 km,Q629-2_153_GRTS_PossibleCaARU_sample_draw_base,TrFEN,0.43968070858100217,Treed Fen,TrBOG,0.32864958990262005,Treed Bog,0.7683302984836222 +1 m,Q629-8_156_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,Q629-8_156_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9972873384636042,Open Bog,TrBOG,0.002712661536395784,Treed Bog,1 +100 m,Q629-8_156_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.9084322540418754,Open Bog,TrBOG,0.09156774595812459,Treed Bog,1 +1 km,Q629-8_156_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.5575215410558474,Treed Bog,OBOG,0.19970088870336286,Open Bog,0.7572224297592103 +1 m,Q637-5_160_GRTS_PossibleCaARU_sample_draw_base,OBOG,1,Open Bog,NA,NA,NA,NA +50 m,Q637-5_160_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.6840575778682353,Open Bog,TrBOG,0.31594242213176477,Treed Bog,1 +100 m,Q637-5_160_GRTS_PossibleCaARU_sample_draw_base,OBOG,0.5353004853019847,Open Bog,TrBOG,0.4646995146980153,Treed Bog,1 +1 km,Q637-5_160_GRTS_PossibleCaARU_sample_draw_base,TrBOG,0.4052762641642442,Treed Bog,OBOG,0.3066590096957359,Open Bog,0.7119352738599801