--- title: "BWI 2022" subtitle: "Veränderungsrechnungen" institution: "Landeskompetenzzentrum Forst Eberswalde" author: "Torsten Wiebke und Sebastian Schmidt" date: "`r Sys.Date()`" bibliography: ../../LaTeX/bib/bibl.bib csl: ../../LaTeX/bib/iso690-author-date-de.csl editor: visual format: revealjs: navigation-mode: vertical # ermölicht horizontale und vertikale Gliederung slide-level: 5 # gibt Überschriftenebene an bis zu der eine eigene Folie erzeugt werden soll incremental: false slide-number: true --- Libraries laden ```{r librarys, include=FALSE} library(readxl) library(ggplot2) library(stats) library(corrplot) library(tidyverse) library(feather) # um Daten zu speichern library(tidyr) library(scales) library(RColorBrewer) # Für eine breite Palette von Farben library(patchwork) # um Diagramme nebeneinander darzustellen library(knitr) library(kableExtra) library(xtable) # für LaTeX-Tabellen library(quarto) ``` Farben festlegen ```{r Farben, include=FALSE} # Benutzerdefinierte Farben für die Layer ba_farben <- c("Eiche (Quercus)" = "#ffffcc", "Eiche" = "#ffffcc", "Eichen-Typ" = "#ffffcc", "Buche (Fagus)" = "#ccfe64", "Buche" = "#ccfe64", "Buchen-Typ" = "#ccfe64", "Esche (Fraxinus)" = "#fed976", "Eschen-Typ" = "#fed976", "Ahorn (Acer)" = "#fd8d3c", "sonst. Lb hoher Lebensdauer" = "#fc4e2a", "andere Lb hoher Lebensdauer" = "#fc4e2a", "Typ sonst. Laubbäume mit hoher Lebensdauer" = "#fc4e2a", "Erle (Alnus)" = "#8c96c6", "Erlen-Typ" = "#8c96c6", "Birke (Betula)" = "#e0ecf4", "Birken-Typ" = "#e0ecf4", "sonst. Lb niedriger Lebensdauer" = "#88419d", "andere Lb niedriger Lebensdauer" = "#88419d", "Typ sonst. Laubbäume mit niedriger Lebensdauer"= "#88419d", "alle Laubbäume" = "#ae017e", "Fichte (Picea)" = "#7f7f7f", "Fichte" = "#7f7f7f", "Fichten-Typ" = "#7f7f7f", "Tanne (Abies)" = "#a6bddb", "Tanne" = "#a6bddb", "Tannen-Typ" = "#a6bddb", "Douglasie (Pseudotsuga)" = "#67a9cf", "Douglasie" = "#67a9cf", "Douglasien-Typ" = "#67a9cf", "Kiefer (Pinus)" = "#e4ce4c", "Kiefer" = "#e4ce4c", "Kiefern-Typ" = "#e4ce4c", "Lärche (Larix)" = "#f4a6a4", "Lärche" = "#f4a6a4", "Lärchen-Typ" = "#f4a6a4", "alle Nadelbäume" = "#02818a", "Typ mit mehreren gleichrangigen Baumarten" ="#006d2c", "Lücke" = "#dcdcdc", "Blöße" = "#edf8fb", "Nichtholzboden" = "#b2e2e2", "Holzboden" = "#66c2a4", "bestockter Holzboden" = "#2ca25f", "Wald" = "#006d2c", "stehend, ganzer Baum" = "goldenrod1", "stehend, Bruchstück (Höhe ab 130 cm)" = "goldenrod2", "stehend" = "goldenrod3", "liegend, ganzer Baum mit Wurzelanlauf" = "darkseagreen1", "liegend, Stammstück mit Wurzelanlauf" = "darkseagreen2", "liegend, Teilstück ohne Wurzelanlauf" = "darkseagreen3", "liegend" = "darkseagreen4", "Wurzelstock (Höhe < 130 cm)" = "#88419d", "Abfuhrrest (aufgeschichtet)" = "#ae017e", "alle Totholztypen" = "#67a9cf" ) ``` # [**Datenimport**]{.underline} ## Veränderungsrechnungen ### Waldflächenänderung ```{r imp-ver-waldfl, include =FALSE} # Get sheet names from the Excel file ver_waldfl_sheet_names <- excel_sheets("data/Veränderung_der_Waldfläche.xlsx") # Read each sheet into a list element, skipping the first 5 rows and treating "NaN" as NA ver_waldfl <- lapply(ver_waldfl_sheet_names, function(sheet) { read_excel("data/Veränderung_der_Waldfläche.xlsx", sheet = sheet, skip = 5, na = "NaN") }) # Assign sheet names to the list elements names(ver_waldfl) <- ver_waldfl_sheet_names ``` ### Vorratsänderung ```{r imp-ver-vorr, include =FALSE} ver_vor_sheet_names <- excel_sheets("data/Veränderung_des_Vorrates.xlsx") ver_vor <- lapply(ver_vor_sheet_names, function(sheet) { read_excel("data/Veränderung_des_Vorrates.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(ver_vor) <- ver_vor_sheet_names ``` ### Abgangsänderung ```{r imp-ver-abg, include =FALSE} ver_abg_sheet_names <- excel_sheets("data/Ver_Abgang.xlsx") ver_abg <- lapply(ver_abg_sheet_names, function(sheet) { read_excel("data/Ver_Abgang.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(ver_abg) <- ver_abg_sheet_names ``` ### Nutzungsänderung ```{r imp-ver-nutz, include =FALSE} ver_nutz_sheet_names <- excel_sheets("data/Ver_Nutzung.xlsx") ver_nutz <- lapply(ver_nutz_sheet_names, function(sheet) { read_excel("data/Ver_Nutzung.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(ver_nutz) <- ver_nutz_sheet_names ``` ## Zustandsrechnungen ### Waldflächenzustand {.hidden .unnumbered .unlisted} ```{r imp_waldfl, include=FALSE} waldfl_sheet_names <- excel_sheets("data/Waldfl_Ba.xlsx") waldfl_ba <- lapply(waldfl_sheet_names, function(sheet) { read_excel("data/Waldfl_Ba.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(waldfl_ba) <- waldfl_sheet_names ``` ### Vorratszustand {.hidden .unnumbered .unlisted} ```{r imp_vor, include=FALSE} vor_sheet_names <- excel_sheets("data/Vorrat.xlsx") vor <- lapply(vor_sheet_names, function(sheet) { read_excel("data/Vorrat.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(vor) <- vor_sheet_names ``` ### Struktur- / Verjüngungszustand {.hidden .unnumbered .unlisted} ```{r imp_strukt, include=FALSE} jung_sheet_names <- excel_sheets("data/Struktur_Verj.xlsx") jung <- lapply(jung_sheet_names, function(sheet) { read_excel("data/Struktur_Verj.xlsx", sheet = sheet, skip = 5, na = "NaN") }) names(jung) <- jung_sheet_names ``` ### Totholzzustand {.hidden .unnumbered .unlisted} ```{r imp_struktur_tot, include=FALSE} tot_sheet_names <- excel_sheets("data/struktur_tot.xlsx") tot <- lapply(tot_sheet_names, function(sheet) { read_excel("data/struktur_tot.xlsx", sheet = sheet, skip = 5, na = c("NaN")) }) names(tot) <- tot_sheet_names ``` ### {.hidden .unnumbered .unlisted} # [Auswertung]{.underline} # Vorauswertung für Martina / MLUK ## Waldfläche ### Waldfläche Brandenburg 2022 nach Baumartenanteilen - Kreisdiagramm ```{r waldfl_stdnfl_brb_ba, include=FALSE} # Daten vorbereiten # Baumartenanteile Zustand! ist_waldfl_ba_2022_long <- waldfl_ba$waldfl_ba_standfl_22_12 %>% filter(Land == "Brandenburg", Inv==2022) %>% pivot_longer(cols = -c(Inv, Land, Einheit, "alle Baumarten", "alle Laubbäume","alle Nadelbäume", "andere Lb hoher Lebensdauer", "andere Lb niedriger Lebensdauer"), names_to = "Baumartengruppe", values_to = "Waldfläche") %>% replace_na(list(Waldfläche= 0)) ``` ```{r pi_waldfl_stdnfl_brb_ba, echo=FALSE} # Daten vorbereiten custom_colors <- c( "#b3de69", "#d95f02", "#7570b3", "#e7298a", "#e6ab02","#1b9e77", "#a6761d", "#666666","#8dd3c7", "#ffffb3", "#bebada", "#fb8072", "#80b1d3", "#fdb462","#66a61e") ist_waldfl_ba_2022_long <- ist_waldfl_ba_2022_long %>% mutate(Prozent = round((Waldfläche/sum(ist_waldfl_ba_2022_long$Waldfläche))*100,digits=2)) # add column Prozent (rounded with 2 digits) # Filter the top four rows top_five <- head(arrange(ist_waldfl_ba_2022_long, desc(Waldfläche)), 5) ist_waldfl_ba_2022_plot22 <- ggplot(ist_waldfl_ba_2022_long, aes(x = "", y = Prozent, fill = reorder(Baumartengruppe, Waldfläche, FUN = sum))) + geom_bar(stat = "identity", width = 1) + geom_text(data = top_five, aes(label = paste(Prozent, "%")), position = position_stack(vjust = 0.5), size = 3, color = "black") + scale_fill_manual(values= custom_colors) + # Farben manuell festlegen coord_polar("y", start = 0) + ggtitle("Prozentuale Aufteilung der Waldfläche \nnach Baumartengruppen in Brandenburg BWI2022 \n inklusive Blößen und Lücken") + labs(fill = "Baumartengruppe") + theme_void() + theme(plot.title = element_text(hjust = 0.5), plot.title.position = "plot") ist_waldfl_ba_2022_plot22 ``` ### Waldfläche Brandenburg 2022 nach Baumartenanteilen - Tabelle ```{r table_waldfl_stdnfl_brb_ba, echo=FALSE} # Tabellenform ausgeben prozent_ba_bb_22 <- ist_waldfl_ba_2022_long %>% mutate(Waldfläche = round(Waldfläche,2)) %>% arrange(desc(Prozent)) %>% select(Baumartengruppe, Waldfläche, Prozent) ist_waldfl_ba_2022_table22 <- kable(prozent_ba_bb_22, "html", caption = "Prozentuale Aufteilung der Waldfläche [ha]nach Baumartenanteilen in Brandenburg (BWI2022)") %>% kable_styling(font_size = 10) %>% column_spec(1, bold = T, width = "10em") %>% # Erste Spalte fett darstellen column_spec(2, width = "10em")%>% column_spec(3, width = "10em") ist_waldfl_ba_2022_table22 ``` #### Interpretation **Blößen** sind vorübergehend unbestockte Holzbodenflächen - während der Aufnahme klassifiziert. **Lücken** Holzboden mit einer Grundfläche bzw. Stammzahl unterhalb der Nachweisgrenze des Aufnahmeverfahrens (weniger als 4 m²/ha sowie keine Bäume des Hauptbestandes in den Probekreisen mit 2 m- oder 1 m-Radius) - abgeleitetes Merkmal. ### Waldflächenveränderung Brandenburg 2012-2022 nach Waldspezifikation ```{r ver-waldfl, include=FALSE} # Daten vorbereiten # Veränderung Waldfläche ver_waldfl_bb_long <- ver_waldfl$ver_waldfl_waldspez_hb_nhb_2022 %>% pivot_longer(cols = -c(Land, Einheit), names_to = "Waldspezifikation", values_to = "Veränderung_Waldfläche") %>% replace_na(list(Veränderung_Waldfläche= 0)) ``` ```{r ver-waldfl-ger-22, echo=FALSE} # Stacked Bar Veränderung Waldfläche # Waldspezifikation ggplot((ver_waldfl_bb_long %>% filter(Land == "Brandenburg" & !Waldspezifikation %in% c("Wald", "Holzboden"))), aes(x = reorder(Waldspezifikation, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Waldspezifikation)) + geom_col() + geom_text(aes(label = round(Veränderung_Waldfläche, 0)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle=90,) + labs(x = "Waldspezifikation", y = "Veränderungen [ha]") + # Achsenbeschriftungen festlegen ggtitle("Veränderungen der Waldfläche in Brandenburg von 2012-2022 \n Veränderung absolut: + 99,7 ha") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_brewer(palette="Greens") + # Farbskala guides(fill = 'none') # Legende entfernen ``` #### Interpretation Von 2012 zu 2022 hat die Waldfläche in Brandenburg absolut um 99,7 ha zugenommen, das teilt sich wie folgt auf die Waldspezifikationen auf: - Nichtholzboden: -3.689 ha - Blöße: -2.892 ha - bestockter Holzboden: + 6.681 ha Hieraus lässt sich Schlussfolgern, dass: - Brandenburg bisher von größeren flächigen Kalamitäten verschont geblieben ist, - ansonsten hätte es eine Zunahme der Blößen gegeben - der Verlust an Waldflächen durch z.B. Tesla, Autobahnausbau marginal ist, bzw. durch Waldneupflanzung kompensiert wird. - von 2002 - 2012 hatte es noch eine Waldabnahme um - 1.185 ha gegeben ### Baumartenveränderung im Hauptbestand in Brandenburg von 2012-2022 ```{r ver-stndfl-ger-martina, include=FALSE} # Daten vorbereiten # Veränderung Standfläche aller Baumarten ver_stndfl_martina_long <- ver_waldfl$ver_stndfl_ba_22 %>% pivot_longer(cols = -c(Land, Einheit), names_to = "Baumart", values_to = "Veränderung_Waldfläche") %>% filter((Land == "Brandenburg")& !Baumart %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")) %>% replace_na(list(Veränderung_Waldfläche= 0)) ``` ```{r ver-stndfl-ba-ger-22-martina, echo=FALSE} # Balkendiagramm Veränderung Standfläche # Baumarten in Brandenburg ggplot(ver_stndfl_martina_long %>% filter(Land == "Brandenburg"), aes(x = reorder(Baumart, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Veränderung_Waldfläche)) + geom_col() + geom_text(aes(label = round(Veränderung_Waldfläche, 0)), position = position_stack(vjust = 0.5), size = 3, color = "black", angle=90,) + ggtitle("Veränderungen der Standflächen nach Baumartengruppen \nim Hauptbestand in Brandenburg von 2012-2022") + labs(x = "Baumart", y = "Veränderungen [ha]") + scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") + guides(fill = 'none') #coord_flip() ``` #### Interpretation - deutliche Abnahme bei: Birke, Fichte, sonst. LB nL, Esche - Birke = Dürrefolge (?) / Alterklassen- Phänomen - Fichte = Dürrefolge - sonst LB nL (Obst, Vogelbeere, Weide, Elsbeere, Pappel) = wahrscheinlich Dürre (?) - Esche = Eschentriebsterben - deutliche Zunahme bei: Eiche, Buche, sonst. LB hL, Erle, Ahorn, Douglasie - Eiche = Pflanzung? - Eher Ausfall der Esche...? - Buche = Waldumbau wächst durch? - Eher Ausfall der Esche? Zeichnen die sichtbaren Absterbeprozesse (noch) nicht - in WZE bereits deutlich sichtbar - sonst. LB hL (Kastanie, Hainbuche, Linde, Mehlbeere, Robinie, Speierling, Ulme) = Klimawandelgewinner - Erle = Trockenheit -\> Mineralisierung - bessere Nährstoffversorgung, Zugänglichkleit der Waldecken verbessert - Ahorn =Klimawandelgewinner, Wegfall Esche u.ä. gibt Raum? - Douglasie = Trockenheitsgewinner? Waldbauliche Förderung? Absterben Kiefer / Fichte? ### Waldflächenveränderung der Baumarten in Brandenburg 2012-2022 ```{r ver_wald_ba_neuwald, include=FALSE} # Daten vorbereiten # Veränderung Waldfläche Baumart ver_waldfl_bb_long <- ver_waldfl$ver_wald_ba_vertyp_22 %>% pivot_longer(cols = -c(Baumartengruppe, Einheit), names_to = "Veränderungstyp", values_to = "Veränderung_Waldfläche") %>% replace_na(list(Veränderung_Waldfläche= 0)) ``` ```{r ver_wald_ba_neuwald_22, echo=FALSE} # Stacked Bar Waldveränderung Waldumwandlung ggplot(ver_waldfl_bb_long %>% filter(!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten") & !Veränderungstyp %in% c("Vereinigungsmenge Wald")), aes(x = reorder(Baumartengruppe, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Veränderungstyp)) + geom_bar(stat = "identity") + # Specify stat as "identity" for pre-summarized data ggtitle("Waldflächenveränderung nach Baumartengruppen \n in Brandenburg 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [ha]") + #scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") # scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") # guides(fill = 'none') ``` #### Interpretation - Abgänge der Kiefer sind ausschließlich auf Waldumwandlungen zurückzuführen ### Vergleich Schichtigkeit ```{r vergl_bestock_schicht, echo=FALSE} # Assuming jung$bb_waldtyp_bestockungsaufbau13 and jung$bb_waldtyp_bestockungsaufbau22 are your data frames # Prepare data for 2013 bb_waldtyp_bestockungsaufbau13_long <- jung$bb_waldtyp_bestockungsaufbau13 %>% filter(Eigentumsart == "all") %>% # Comment out if you want all Eigentumsart select(-c("Einheit", "alle Arten von Bestockungsaufbau")) %>% pivot_longer( cols = c("einschichtig", "zweischichtig", "mehrschichtig oder plenterartig"), names_to = "Bestockungsaufbau", values_to = "Fläche" ) %>% mutate(Fläche = replace_na(Fläche, 0)) %>% group_by(`Laub-/Nadel-Waldtyp`, `Eigentumsart`) %>% mutate(proz = round(Fläche / sum(Fläche) * 100, 2)) %>% ungroup() %>% mutate(Year = 2013) # Prepare data for 2022 bb_waldtyp_bestockungsaufbau22_long <- jung$bb_waldtyp_bestockungsaufbau22 %>% filter(Eigentumsart == "all") %>% # Comment out if you want all Eigentumsart select(-c("Einheit", "alle Arten von Bestockungsaufbau")) %>% pivot_longer( cols = c("einschichtig", "zweischichtig", "mehrschichtig oder plenterartig"), names_to = "Bestockungsaufbau", values_to = "Fläche" ) %>% mutate(Fläche = replace_na(Fläche, 0)) %>% group_by(`Laub-/Nadel-Waldtyp`, `Eigentumsart`) %>% mutate(proz = round(Fläche / sum(Fläche) * 100, 2)) %>% ungroup() %>% mutate(Year = 2022) # Combine the data for 2013 and 2022 combined_data <- bind_rows(bb_waldtyp_bestockungsaufbau13_long, bb_waldtyp_bestockungsaufbau22_long) # Create the grouped bar plot ggplot(combined_data %>% filter(`Laub-/Nadel-Waldtyp` == "alle Laub-/Nadelwaldtypen", `Eigentumsart` == "all"), aes(x = Bestockungsaufbau, y = proz, fill = as.factor(Year))) + geom_bar(stat = "identity", position = position_dodge(width = 0.8)) + labs(x = "Bestockungsaufbau", y = "Prozent [%]", fill = "Year") + ggtitle("Bestockungsaufbau in Brandenburg (2013 vs 2022)") + scale_fill_brewer(palette = "Greens") + theme_minimal() + geom_text(aes(label = paste0(round(proz, 0), "%"), y = proz + ifelse(proz >= 0, 3, -2)), # Adjust position dynamically based on bar height position = position_dodge(width = 0.8), # Position text dodged along with bars size = 3, color = "black", angle = 90) + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(margin = margin(b = 25))) ``` #### Interpretation ### Vergleich Schichtigkeit nach Waldtyp ```{r vergl_bestock_schicht_watyp, echo=FALSE} # Assuming jung$bb_waldtyp_bestockungsaufbau13 and jung$bb_waldtyp_bestockungsaufbau22 are your data frames # Prepare data for 2013 bb_waldtyp_bestockungsaufbau13_long <- jung$bb_waldtyp_bestockungsaufbau13 %>% filter(Eigentumsart == "all") %>% select(-c("Einheit", "alle Arten von Bestockungsaufbau")) %>% pivot_longer( cols = c("einschichtig", "zweischichtig", "mehrschichtig oder plenterartig"), names_to = "Bestockungsaufbau", values_to = "Fläche" ) %>% mutate(Fläche = replace_na(Fläche, 0)) %>% group_by(`Laub-/Nadel-Waldtyp`, `Eigentumsart`) %>% mutate(proz = round(Fläche / sum(Fläche) * 100, 2)) %>% ungroup() %>% mutate(Year = "2013") # Prepare data for 2022 bb_waldtyp_bestockungsaufbau22_long <- jung$bb_waldtyp_bestockungsaufbau22 %>% filter(Eigentumsart == "all") %>% select(-c("Einheit", "alle Arten von Bestockungsaufbau")) %>% pivot_longer( cols = c("einschichtig", "zweischichtig", "mehrschichtig oder plenterartig"), names_to = "Bestockungsaufbau", values_to = "Fläche" ) %>% mutate(Fläche = replace_na(Fläche, 0)) %>% group_by(`Laub-/Nadel-Waldtyp`, `Eigentumsart`) %>% mutate(proz = round(Fläche / sum(Fläche) * 100, 2)) %>% ungroup() %>% mutate(Year = "2022") # Combine the data for 2013 and 2022 combined_data <- bind_rows(bb_waldtyp_bestockungsaufbau13_long, bb_waldtyp_bestockungsaufbau22_long) # Create a combined column for `Laub-/Nadel-Waldtyp` and `Year` for x-axis grouping combined_data <- combined_data %>% mutate(Laub_Nadel_Year = paste(`Laub-/Nadel-Waldtyp`, Year, sep = " - ")) # Set factor levels for proper ordering combined_data$Laub_Nadel_Year <- factor(combined_data$Laub_Nadel_Year, levels = c( "Laubwald-Typ - 2013", "Laubwald-Typ - 2022", "Nadelwald-Typ - 2013", "Nadelwald-Typ - 2022", "Typ mit gleichen Anteilen Laub-/Nadelbäume - 2013", "Typ mit gleichen Anteilen Laub-/Nadelbäume - 2022" )) # Create the combined plot with facets ggplot(combined_data %>% filter(`Laub-/Nadel-Waldtyp` %in% c("Laubwald-Typ", "Nadelwald-Typ", "Typ mit gleichen Anteilen Laub-/Nadelbäume")), aes(x = Laub_Nadel_Year, y = proz, fill = Bestockungsaufbau, group = Year)) + geom_bar(stat = "identity", position = position_dodge(width = 0.9)) + labs(x = "Laub-/Nadelwaldtyp", y = "Prozent [%]", fill = "Bestockungsaufbau") + ggtitle("Bestockungsaufbau in Brandenburg (2013 und 2022)") + scale_fill_brewer(palette = "Greens") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(margin = margin(b = 25))) ``` ### Vergleich Totholz ```{r totvorrat12_22_typ, include=FALSE} # Daten Vorbereiten # Totholzvorrat BB Verrgleich 12-22 totvorrat_typ_long_2012_2022 <- tot$bb_tot_typ_13_22 %>% filter(Eigentumsart == "alle Eigentumsarten 2012"|Eigentumsart == "alle Eigentumsarten 2022") %>% pivot_longer(cols = -c(Eigentumsart, Einheit, Jahr, "liegend","stehend","alle Totholztypen"), #"stehend, ganzer Baum", "stehend, Bruchstück (Höhe ab 130 cm)","liegend, ganzer Baum mit Wurzelanlauf", "liegend, Stammstück mit Wurzelanlauf", "liegend, Teilstück ohne Wurzelanlauf", "Wurzelstock (Höhe < 130 cm)", "Abfuhrrest (aufgeschichtet)"), names_to = "Totholztyp", values_to = "Totholzvorrat") ``` ```{r totvorrat12_22_typ_stackbar, echo=FALSE} # Stacked bar Vergleich Totholzvorrat 12-22 totvorrat_typ_long_2012_2022 <- arrange(totvorrat_typ_long_2012_2022, Totholzvorrat) # Plot erstellen als gestapeltes Säulendiagramm - geordnet mit Flächenangaben - für 2012 & 2022 totvorrat12_22_typ_stackbar <- ggplot(totvorrat_typ_long_2012_2022, aes(x = Eigentumsart, y = Totholzvorrat, fill = reorder(Totholztyp, Totholzvorrat, FUN = sum))) + geom_bar(stat = "identity", position = "stack") + # scale_fill_manual() + # Farben manuell festlegen + labs(x = "Totholztyp", y = "Totholzvorrat [m³/ha]") + ggtitle("Vergleich der Totholzvorräte nach Totholztyp in m³/ha\n über alle Eigentumsarten in Brandenburg - BWI2012 / BWI2022") + theme(plot.title = element_text(hjust = 0.5)) + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(margin = margin(b = 20)), plot.title.position = "plot") + guides(fill = guide_legend(title = "Totholztyp", title.position = "top")) + scale_y_continuous(labels = scales::comma_format(big.mark = ".", decimal.mark = ","), breaks = seq(0, sum(totvorrat_typ_long_2012_2022$Totholzvorrat), by = 2)) totvorrat12_22_typ_stackbar ``` #### Interpretation Der Totholzvorrat in Brandenburg ist von 10.94 m³/ha in 2012 auf 17 m³/ha gestiegen, im Vergleich dazu: Waldvision Brandenburg 2050 - Ziele: - 2020: 15 Fm/ha - 2032: 20 Fm/ha - 2050: 25 Fm/ha Trotzdem liegt BB im Deutschlandweiten Vergleich auf dem (vor-)letzten Platz ### Totholzvorrat und -typ Deutschland BWI 2022 ```{r tot_typ_22_long, include=FALSE} # Daten vorbereiten # Totholzvorrat Ger tot_typ_22_long <- tot$tot_typ_22 %>% pivot_longer(cols = c( "stehend, ganzer Baum", "stehend, Bruchstück (Höhe ab 130 cm)", "stehend", "liegend, ganzer Baum mit Wurzelanlauf", "liegend, Stammstück mit Wurzelanlauf", "liegend, Teilstück ohne Wurzelanlauf", "liegend", "Wurzelstock (Höhe < 130 cm)", "Abfuhrrest (aufgeschichtet)", "alle Totholztypen"), names_to = "Totholztyp", values_to = "Totholzvorrat") ``` ```{r tot_typ_22_ger_long, echo=FALSE} # Stacked Bar Totholzvorrat Ger mit Totholztyp # Sortieren der Länder basierend auf der Summe in "alle Totholztypen" # Anpassen der Faktorstufen im Hauptdatensatz tot_typ_22_long$Land <- factor(tot_typ_22_long$Land, levels = (tot_typ_22_long %>% filter(Totholztyp == "alle Totholztypen") %>% arrange(desc(Totholzvorrat)) %>% pull(Land))) # Plotten der Daten ggplot(tot_typ_22_long %>% filter(!Totholztyp %in% c("alle Totholztypen", "liegend", "stehend")), aes(x = Land, y = Totholzvorrat, fill = Totholztyp)) + geom_bar(stat = "identity", position = "stack") + labs(x = "Land", y = "Totholzvorrat [m³/ha]", fill = "Totholztyp") + ggtitle("Totholzvorrat nach Totholztyp in m³/ha über alle Länder in Deutschland (BWI2022)") + theme_minimal() + theme(axis.text.x = element_text(angle = 65, hjust = 1), plot.title = element_text(margin = margin(b = 30))) + guides(fill = guide_legend(title = "Totholztyp", title.position = "top")) ``` #### Interpretation Im deutschlandweiten Vergleich schneidet Brandenburg damit auf dem (vor-) letzen Platz ab. der bundesweite Durchschnitt beträgt 29 m³/ha. # Auswertung der Veränderungsrechnungen ## **Standfläche** ```{r ver-stndfl-ger, include=FALSE} # Daten vorbereiten Veränderung Standfläche aller Baumarten in Deutschland ver_stndfl_long <- ver_waldfl$ver_stndfl_ba_22 %>% # Daten für Waldfl in Long-Format bringen pivot_longer(cols = -c(Land, Einheit), # Specify columns that should remain unchanged names_to = "Baumart", # New column name for the names of pivoted columns values_to = "Veränderung_Waldfläche") %>% # New column name for the values of pivoted columns #filter(!Eigentumsart %in% c( "Öffentlicher Wald", "Privatwald", "alle Eigentumsarten")) %>% # Exclude rows replace_na(list(Veränderung_Waldfläche= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-stndfl-ger-22, echo=FALSE} # Balkendiagramm Veränderung Standfläche aller Baumarten für Deutschland erzeugen # Darstellung Torsten abgewandelt ggplot((ver_stndfl_long %>% filter(Baumart == "alle Baumarten")), aes(x = reorder(Land, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Veränderung_Waldfläche)) + geom_col() + labs(x = "Land", y = "Veränderungen [ha]") + # Achsenbeschriftungen festlegen ggtitle("Veränderungen der Standfläche aller Baumarten \nim Hauptbestand in den Ländern von 2012-2022") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_gradient(high = "darkseagreen", low = "coral3") + # Farbskala von grün nach rot mit aufsteigenden Werten guides(fill = 'none') # Legende entfernen ``` ### Standflächenveränderung Brandenburg - Standfläche auf Baumartenebene ungeeignet, übergeordnet aber sehr brauchbar - These: Blößen und Lücken haben abgenommen - These: im Inventurzeitraum ist Brandenburg glimpflich an Kalamitäten vorbeigekommen ```{r ver-stndfl-ger-22_ssch, include=FALSE} # Balkendiagramm Veränderung Standfläche aller Baumarten für Deutschland erzeugen # Eigene Darstellung ggplot(ver_stndfl_long %>% filter(Baumart=="alle Baumarten")) + geom_col(aes(x=reorder(Land, Veränderung_Waldfläche), y=Veränderung_Waldfläche, fill = Veränderung_Waldfläche)) + ggtitle("Veränderungen der Standfläche aller Baumarten \nim Hauptbestand in den Ländern von 2012-2022") + labs(x = "Land", y = "Veränderungen [ha]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_gradient(high = "darkseagreen", low = "coral3") + guides(fill = 'none') # coord_flip() ``` ### Veränderung Standfläche aller Baumarten für Brandenburg ```{r ver-stndfl-ba-ger-22, echo=FALSE} # Balkendiagramm Veränderung Standfläche aller Baumarten für Brandenburg erzeugen # Eigene Darstellung ggplot(ver_stndfl_long %>% filter(Land == "Brandenburg" & !Baumart %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")), aes(x = reorder(Baumart, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Veränderung_Waldfläche)) + geom_col() + geom_text(aes(label = round(Veränderung_Waldfläche, 0)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle=90,) + ggtitle("Veränderungen der Standflächen nach Baumartengruppen \nim Hauptbestand in Brandenburg von 2012-2022") + labs(x = "Baumart", y = "Veränderungen [ha]") + scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") + guides(fill = 'none') #coord_flip() ``` #### Interpretation - deutliche Abnahme bei: Birke, Fichte, sonst. LB nL, Esche - Birke = Dürrefolge (?) / Alterklassen- Phänomen - Fichte = Dürrefolge - sonst LB nL (Obst, Vogelbeere, Weide, Elsbeere, Pappel) = wahrscheinlich Dürre (?) - Esche = Eschentriebsterben - deutliche Zunahme bei: Eiche, Buche, sonst. LB hL, Erle, Ahorn, Douglasie - Eiche = Pflanzung? - Eher Ausfall der Esche...? - Buche = Waldumbau wächst durch? - Eher Ausfall der Esche? Zeichnen die sichtbaren Absterbeprozesse (noch) nicht - in WZE bereits deutlich sichtbar - sonst. LB hL (Kastanie, Hainbuche, Linde, Mehlbeere, Robinie, Speierling, Ulme) = Klimawandelgewinner - Erle = Trockenheit -\> Mineralisierung - bessere Nährstoffversorgung, Zugänglichkleit der Waldecken verbessert - Ahorn =Klimawandelgewinner, Wegfall Esche u.ä. gibt Raum? - Douglasie = Trockenheitsgewinner? Waldbauliche Förderung? Absterben Kiefer / Fichte? ### Standflächenveränderung über Eigentumsarten in Brandenburg ```{r ver-stndfl-eig-22, include=FALSE} # Daten vorbereiten Veränderung Standfläche aller Baumarten über Eigentumsarten in Deutschland ver_stndfl_eig_long <- ver_waldfl$ver_stndfl_ba_eig_22 %>% # Daten für Waldfl in Long-Format bringen pivot_longer(cols = -c(Eigentumsart, Einheit), # Specify columns that should remain unchanged names_to = "Baumart", # New column name for the names of pivoted columns values_to = "Veränderung_Waldfläche") %>% # New column name for the values of pivoted columns filter(!Eigentumsart %in% c( "Öffentlicher Wald", "Privatwald", "alle Eigentumsarten")) %>% # Exclude rows replace_na(list(Veränderung_Waldfläche= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-stndfl-ba-ger-eig-22, echo=FALSE} #Daten nach Eigentumsart vorordnen ver_stndfl_eig_long <- ver_stndfl_eig_long %>% mutate(Eigentumsart = factor(Eigentumsart, levels = c("Körperschaftswald", "Staatswald (Bund)", "Staatswald (Land)", "Privatwald, bis 20 ha", "Privatwald, über 20 bis 1000 ha", "Privatwald, über 1000 ha"))) # Balkendiagramm stacked Veränderung Standfläche aller Baumarten in Brandenburg nach Eigentumsform erzeugen # Eigene Darstellung ggplot(ver_stndfl_eig_long %>% filter(!Baumart %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")), aes(x = reorder(Baumart, Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill = Eigentumsart)) + geom_bar(stat = "identity") + # Specify stat as "identity" for pre-summarized data ggtitle("Veränderungen der Standflächen \nnach Baumartengruppen im Hauptbestand \nin Brandenburg nach Eigentumsart von 2012-2022") + labs(x = "Baumart", y = "Veränderungen [ha]") + #scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("Körperschaftswald" = "darkseagreen1", "Staatswald (Bund)" = "darkseagreen3", "Staatswald (Land)" = "darkseagreen4", "Privatwald, bis 20 ha" = "coral", "Privatwald, über 20 bis 1000 ha" = "coral2" , "Privatwald, über 1000 ha" ="coral4")) # scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") # guides(fill = 'none') ``` #### Interpretation - Kiefer zeichnet nach Eigentumsform deutlich gegensätzlich - höhere Durchforstungsintensität im Priwatwald oder Stiftungen \>1.000 ha? - Räumliche Verteilung der Baumarten im Land überstrahlt die anderen Effekte - Buche Zunahme in Land da im Norden Brandenburgs stark ausgeprägt ### Standflächenveränderung der Kiefer über Eigentumsarten in Brandenburg ```{r ver-stndfl-bb-ki-22, echo=FALSE} # Balkendiagramm Veränderung Standfläche der Kiefer in Brandenburg nach Eigentumsform erzeugen # Eigene Darstellung ggplot(ver_stndfl_eig_long %>% filter(Baumart %in% c("Kiefer (Pinus)")), aes(x = reorder(Eigentumsart,Veränderung_Waldfläche), y = Veränderung_Waldfläche, fill= Veränderung_Waldfläche)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Standflächen der Kiefer im Hauptbestand \nin Brandenburg nach Eigentumsart von 2012-2022") + labs(x = "Eigentumsart", y = "Veränderungen [ha]") + scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") + guides(fill = 'none') ``` #### Interpretation - Staatswald vs. Privatwald - Einschränkung: Standfläche ist auf Baumartenebene nur bedingt Aussagekräftig ## Vorrat und Grundfläche ```{r ver-vorr-long, include=FALSE} # Daten vorbereiten Veränderung Vorrat aller Baumarten Hauptbestand für Deutschland ver_vor_long <- ver_vor$Vorratsänderung %>% pivot_longer(cols = -c(Land, Einheit), names_to = "Bestandesschicht", values_to = "Veränderung_Vorrat") %>% filter(Land != "Deutschland (alle Länder)") %>% replace_na(list(Veränderung_Vorrat = 0)) ``` ```{r ver-vorr-ger-22, echo=FALSE} # Balkendiagramm Veränderung Vorrat aller Baumarten für Deutschland erzeugen # Eigene Darstellung ggplot(ver_vor_long %>% filter(Bestandesschicht=="Hauptbestand (auch Plenterwald)")) + geom_col(aes(x=reorder(Land, Veränderung_Vorrat), y=Veränderung_Vorrat, fill = Veränderung_Vorrat)) + geom_text(aes(x = reorder(Land, Veränderung_Vorrat), y = Veränderung_Vorrat, label = round(Veränderung_Vorrat, 1)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle=90,) + ggtitle("Veränderungen des Vorrats aller Baumarten \nim Hauptbestand in den Ländern von 2012-2022") + labs(x = "Land", y = "Veränderungen [m³/ha]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") + guides(fill = 'none') # coord_flip() ``` ```{r ver-vorr-bb-long, include=FALSE} # Daten vorbereiten Veränderung Vorrat aller Baumarten aller Bestandesschichten für Brandenburg ###noch nicht fertig ver_vor_bb_long <- ver_vor$ver_vor_22 %>% pivot_longer(cols = -c(Land, Einheit), names_to = "Baumart", values_to = "Veränderung_Vorrat") %>% filter(Land != "Deutschland (alle Länder)") %>% replace_na(list(Veränderung_Vorrat = 0)) ``` ### Balkendiagramm Veränderung Grundfläche aller Baumarten für Deutschland ```{r ver-gf-long, include=FALSE} # Daten vorbereiten Veränderung Grundfläche aller Baumarten aller Bestandesschichten für Deutschland ver_gf_long <- ver_vor$ver_gf_ba_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Land, Einheit), # Specify columns that should remain unchanged names_to = "Baumart", # New column name for the names of pivoted columns values_to = "Veränderung_Grundfläche") %>% # New column name for the values of pivoted columns filter(Land != "Deutschland (alle Länder)") %>% # Exclude rows where Land is "Deutschland (alle Länder)" replace_na(list(Veränderung_Grundfläche = 0)) # Replace NA values in the "Veränderungen" column with 0 #mutate(Veränderung_Grundfläche = Veränderung_Grundfläche / 10000) # Divide the values by 10,000 ``` ```{r ver-gf-ger-22, echo=FALSE} # Balkendiagramm Veränderung Grundfläche aller Baumarten für Deutschland erzeugen # Eigene Darstellung ggplot(ver_gf_long %>% filter(Baumart=="alle Baumarten")) + geom_col(aes(x=reorder(Land, Veränderung_Grundfläche), y=Veränderung_Grundfläche, fill = Veränderung_Grundfläche)) + geom_text(aes(x = reorder(Land, Veränderung_Grundfläche), y = Veränderung_Grundfläche, label = round(Veränderung_Grundfläche, 0)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle=90,) + ggtitle("Veränderungen der Grundfläche aller Baumarten \n über alle Bestandesschichten in Deutschland von 2012-2022") + labs(x = "Land", y = "Veränderungen [m²]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient(high = "darkseagreen", low = "coral3") + guides(fill = 'none') # coord_flip() ``` ### Veränderung Grundfläche aller Baumarten für Brandenburg ```{r ver-gf-bb-22, echo=FALSE} # Balkendiagramm Veränderung Grundfläche aller Baumarten für Brandenburg erzeugen # Eigene Darstellung ggplot(ver_gf_long %>% filter(Land == "Brandenburg" & !Baumart %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten"))) + geom_col(aes(x=reorder(Baumart, Veränderung_Grundfläche), y=Veränderung_Grundfläche, fill = Veränderung_Grundfläche)) + geom_text(aes(x = reorder(Baumart, Veränderung_Grundfläche), y = Veränderung_Grundfläche, label = round(Veränderung_Grundfläche, 0)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle=90,) + ggtitle("Veränderungen der Grundfläche aller Baumarten \n über alle Bestandesschichten in Brandenburg von 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [m²]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient(high = "darkseagreen", low = "coral3") + guides(fill = 'none') # coord_flip() ``` #### Interpretation - Kiefer: BHD Zunahme? Frage: Wald lückig? Vergleich Grundfläche über versch. Bestandesschichten? ### Veränderung Grundfläche aller Baumarten in Brandenburg nach Eigentumsform ```{r ver-gf-bb-eig-22, include=FALSE} # Daten vorbereiten Veränderung Grundfläche aller Baumarten über Eigentumsarten in Brandenburg ver_gf_eig_long <- ver_vor$ver_gf_eig_bb_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Eigentumsart, Einheit), # Specify columns that should remain unchanged names_to = "Baumart", # New column name for the names of pivoted columns values_to = "Veränderung_Grundfläche") %>% # New column name for the values of pivoted columns filter(!Eigentumsart %in% c( "Öffentlicher Wald", "Privatwald", "alle Eigentumsarten")) %>% # Exclude rows replace_na(list(Veränderung_Grundfläche= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 # mutate(Veränderung_Grundfläche=Veränderung_Grundfläche/10000) ``` ```{r ver-gf-bb-eig-22-ssch, echo=FALSE} #Daten nach Eigentumsart vorordnen ver_gf_eig_long <- ver_gf_eig_long %>% mutate(Eigentumsart = factor(Eigentumsart, levels = c("Körperschaftswald", "Staatswald (Bund)", "Staatswald (Land)", "Privatwald, bis 20 ha", "Privatwald, über 20 bis 1000 ha", "Privatwald, über 1000 ha"))) # Balkendiagramm stacked Veränderung Grundfläche aller Baumarten in Brandenburg nach Eigentumsform erzeugen # Eigene Darstellung ggplot(ver_gf_eig_long %>% filter(!Baumart %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")), aes(x = reorder(Baumart, Veränderung_Grundfläche), y = Veränderung_Grundfläche, fill = Eigentumsart)) + geom_bar(stat = "identity") + # Specify stat as "identity" for pre-summarized data ggtitle("Veränderungen der Grundflächen nach Baum-\nartengruppen über alle Bestandesschichten in \nBrandenburg nach Eigentumsart von 2012-2022") + labs(x = "Baumart", y = "Veränderungen [m²]") + scale_y_continuous(labels = label_number(scale = 1e-3, suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_manual(values = c("Körperschaftswald" = "darkseagreen1", "Staatswald (Bund)" = "darkseagreen3", "Staatswald (Land)" = "darkseagreen4", "Privatwald, bis 20 ha" = "coral", "Privatwald, über 20 bis 1000 ha" = "coral2" , "Privatwald, über 1000 ha" ="coral4")) # scale_fill_gradient2(high = "darkseagreen4", mid = "darkseagreen", low = "coral3") # guides(fill = 'none') ``` #### Interpretation - Grundflächenabnahme im Priwatwald bis 20 ha unterstützt die Annahme das stärker Durchforstet wird. - Notwendig: Stammzahl/ha der Kiefer nach Eigentumsform danebenstellen als vergleichbares Diagramm -\> wenn die Stammzahl stärker abnimmt als die Grundfläche, bedeuted das, dass die Durchforstung erst kürzlich (\~5 Jahre) erfolgt ist. ### Veränderung Standfläche der Kiefer in Brandenburg nach Eigentumsform ```{r ver-gf-ki-bb-22, echo=FALSE} # Balkendiagramm Veränderung Standfläche der Kiefer in Brandenburg nach Eigentumsform erzeugen # Eigene Darstellung ggplot(ver_gf_eig_long %>% filter(Baumart %in% c("Kiefer (Pinus)")), aes(x = reorder(Eigentumsart,Veränderung_Grundfläche), y = Veränderung_Grundfläche, fill= Veränderung_Grundfläche)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Grundfläche der Kiefer aller Bestandes-\nschichten in Brandenburg nach Eigentumsart von 2012-2022") + labs(x = "Eigentumsart", y = "Veränderungen [m²]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient(high = "darkseagreen4", low = "coral3") + guides(fill = 'none') ``` ## Abgänge ### Veränderung der Abgänge pro Jahr mit Abgangsgrund in Brandenburg von 2012 - 2022 Vorrat (Erntefestmaß o.R., verwertbar) des ausgeschiedenen Bestandes \[m³/ha\*a\] nach Baumartengruppe und Abgangsgrund Basis:Deutschland, Vereinigungsfläche Holzboden beider Inventuren, begehbar\*\*, einschließlich Lücken in der Bestockung bzw. im Bestand, ausgeschiedene Bäume ab 7 cm Bhd im Hauptbestand oder Plenterwald, bestandesintern, (Schnittmenge Inventurnetz für BWI Periode 2012-2022 ); ideeller Flächenbezug (gemäß Standflächenanteil)) ```{r ver-abg-bb, include=FALSE} # Daten vorbereiten Veränderung Abgänge aller Baumarten in Brandenburg Abgangsgrund / Baumart ver_abg_bb_long <- ver_abg$ver_abg_bb_ba_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Baumartengruppe, Einheit), # Specify columns that should remain unchanged names_to = "Abgangsgrund", # New column name for the names of pivoted columns values_to = "Veränderung_Vorrat_Jahr") %>% # New column name for the values of pivoted columns filter(Baumartengruppe %in% c("alle Baumarten")) %>% # Exclude rows replace_na(list(Veränderung_Vorrat_Jahr= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-abg-bb-22, echo=FALSE} # Balkendiagramm Veränderung der Abgänge pro Jahr in Brandenburg ggplot(data = ver_abg_bb_long, aes(x = reorder(Abgangsgrund,Veränderung_Vorrat_Jahr), y = Veränderung_Vorrat_Jahr, fill= Veränderung_Vorrat_Jahr)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + geom_text(aes(label = round(Veränderung_Vorrat_Jahr, 1)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle = 90) + ggtitle("Veränderungen der Abgänge pro Jahr in Brandenburg aller \nBaumarten nach Abgangsgrund von 2012-2022") + labs(x = "Abgangsgrund", y = "Veränderungen [m³/ha*a]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5)) + scale_fill_gradient(low = "coral", high = "coral4") + guides(fill = 'none') ``` #### Interpretation - Frage allgemein: Einheit: 1000 m³/a besser als m³/ha\*a? - reguläre Entnahme mit Abstand die kleinste Abgangsform? Vgl. 2012: 4.2 m³/ha/a - Menge "Angabe fehlt" unklar - nach Plausiprüfung sollten dies nicht vorkommen ### Veränderung der Abgänge pro Jahr mit Abgangsgrund und Baumart in Brandenburg von 2012 - 2022 - Achtung - alle folgenden Grafiken zum Abgang sind fälschlicherweise gestapelt. Das ist nicht korrekt, da sich die Veränderung im Vorrat immer je Nutzungsart berechnet. - Bitte im Geiste nebeneinander stellen :-) ```{r ver-abg-bb-ba, include=FALSE} # Daten vorbereiten Veränderung Abgänge aller Baumarten in Brandenburg Abgangsgrund / Baumart ver_abg_bb_ba_long <- ver_abg$ver_abg_bb_ba_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Baumartengruppe, Einheit), # Specify columns that should remain unchanged names_to = "Abgangsgrund", # New column name for the names of pivoted columns values_to = "Veränderung_Vorrat_Jahr") %>% # New column name for the values of pivoted columns filter((!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")),(!Abgangsgrund %in% c("alle Abgangsgründe"))) %>% # Exclude rows replace_na(list(Veränderung_Vorrat_Jahr= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-abg-bb-ba-22, echo=FALSE} # Balkendiagramm stacked Veränderung der Abgänge pro Jahr in Brandenburg und Baumart #Daten nach Abgangsgrund vorordnen ver_abg_bb_ba_long <- ver_abg_bb_ba_long %>% mutate(Abgangsgrund = factor(Abgangsgrund, levels = c("regulär", "Sturm", "Insekten / Dürre", "sonstige Kalamitäten", "Ursache der Kalamität ungewiss", "Ursache unbekannt", "Angabe fehlt"))) ggplot(ver_abg_bb_ba_long %>% filter(!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")), aes(x = reorder(Baumartengruppe, Veränderung_Vorrat_Jahr), y = Veränderung_Vorrat_Jahr, fill = Abgangsgrund)) + geom_bar(stat = "identity") + # Specify stat as "identity" for pre-summarized data ggtitle("Veränderung der Abgänge pro Jahr nach Baumartengruppen \nüber alle Bestandesschichten in Brandenburg \nnach Eigentumsart von 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [m³/ha*a]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("regulär" = "#729ECE", # slightly muted blue "Sturm" = "#FDBF6F", # pastel orange "Insekten / Dürre" = "#73C476", # slightly muted green "sonstige Kalamitäten" = "#FF6F69", # slightly muted red "Ursache der Kalamität ungewiss" = "#B0B0B0", # grey "Ursache unbekannt" = "#D9D9D9", # light grey "Angabe fehlt" = "pink")) # very light grey ``` #### Interpretation - Fichte: Trocken & Käfer - Esche: Sturm (Eschentriebsterben Instabilität Wurzeln) - Kiefer: sonstige Kalamitäten = Käfer unerkannt bzw. Diplodia =\> Komplexsterben? - Tanne und Douglasie: auffällig hohe Ausfälle nach Sturm an Gesamtmenge Tanne - Geringe Eckenzahl - Std.Fehler hoch Frage: Darstellung in Prozent zur Gesamtheit einer Baumart? Frage: Warum über alle Abgangsgründe hinweg Ki 4,8 aber Summe aller Abgangsgründe 75? -\> keine Summe, jeweils die Abgangsmenge je Kalamitätsgrund! Da immer nur eine Nutzungsart Info: Ursache unbekannt bei keine Nutzung nicht vorhanden, nur bei selektive und flächige -nutzung Frage: "Angabe fehlt" sollte doch gar nicht möglich sein nach Plausiprüfung, oder? ### Test: Gruppiert nach Abgangsgrund ```{r ver-abg-bb-ba-22-test, echo=FALSE} # Balkendiagramm Veränderung der Abgänge pro Jahr in Brandenburg und Baumart #Daten nach Abgangsgrund vorordnen ver_abg_bb_ba_long <- ver_abg_bb_ba_long %>% mutate(Abgangsgrund = factor(Abgangsgrund, levels = c("regulär", "Sturm", "Insekten / Dürre", "sonstige Kalamitäten", "Ursache der Kalamität ungewiss", "Ursache unbekannt", "Angabe fehlt"))) ggplot(ver_abg_bb_ba_long %>% filter(!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")), aes(x = reorder(Baumartengruppe, Veränderung_Vorrat_Jahr), y = Veränderung_Vorrat_Jahr, fill = Abgangsgrund)) + geom_bar(stat = "identity", position = position_dodge(width = 0.8)) + # Use position_dodge for side-by-side bars ggtitle("Veränderung der Abgänge pro Jahr nach Baumartengruppen \nüber alle Bestandesschichten in Brandenburg \nnach Eigentumsart von 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [m³/ha*a]") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("regulär" = "#729ECE", # slightly muted blue "Sturm" = "#FDBF6F", # pastel orange "Insekten / Dürre" = "#73C476", # slightly muted green "sonstige Kalamitäten" = "#FF6F69", # slightly muted red "Ursache der Kalamität ungewiss" = "#B0B0B0", # grey "Ursache unbekannt" = "#D9D9D9", # light grey "Angabe fehlt" = "pink")) # very light grey ``` ### Veränderung der Abgänge pro Jahr in Brandenburg nach Eigentumsform ```{r ver-abg-bb-eig, include=FALSE} # Daten vorbereiten Veränderung Abgänge aller Baumarten in Brandenburg Abgangsgrund / Baumart ver_abg_bb_eig_long <- ver_abg$ver_abg_bb_eig_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Eigentumsart, Einheit), # Specify columns that should remain unchanged names_to = "Abgangsgrund", # New column name for the names of pivoted columns values_to = "Veränderung_Vorrat_Jahr") %>% # New column name for the values of pivoted columns filter((!Eigentumsart %in% c("Öffentlicher Wald", "Privatwald", "alle Eigentumsarten")),(!Abgangsgrund %in% c("alle Abgangsgründe"))) %>% # Exclude rows replace_na(list(Veränderung_Vorrat_Jahr= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-abg-bb-eig-22, echo=FALSE} #Daten nach Abgangsgrund vorordnen ver_abg_bb_eig_long <- ver_abg_bb_eig_long %>% mutate(Abgangsgrund = factor(Abgangsgrund, levels = c("regulär", "Sturm", "Insekten / Dürre", "sonstige Kalamitäten", "Ursache der Kalamität ungewiss", "Ursache unbekannt", "Angabe fehlt"))) # Veränderung der Abgänge aller Baumarten pro Jahr in Brandenburg nach Eigentumsform ggplot(data = ver_abg_bb_eig_long, aes(x = reorder(Eigentumsart,Veränderung_Vorrat_Jahr), y = Veränderung_Vorrat_Jahr, fill= Abgangsgrund)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Abgänge aller Baumarten pro Jahr \nin Brandenburg nach Eigentumsart von 2012-2022") + labs(x = "Eigentumsart", y = "Veränderungen [m³/ha*a]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("regulär" = "#729ECE", # slightly muted blue "Sturm" = "#FDBF6F", # pastel orange "Insekten / Dürre" = "#73C476", # slightly muted green "sonstige Kalamitäten" = "#FF6F69", # slightly muted red "Ursache der Kalamität ungewiss" = "#B0B0B0", # grey "Ursache unbekannt" = "#D9D9D9", # light grey "Angabe fehlt" = "pink")) # very light grey # scale_fill_gradient(high = "darkseagreen4", low = "coral3") + #guides(fill = 'none') ``` #### Interpretation Körperschaftswald besonders betroffen - schlechte Betreuung, späte Ereignisserkennung, Kalamitätsnutzung? ### Veränderung der Abgänge der Kiefer pro Jahr in Brandenburg nach Eigentumsform ```{r ver-abg-bb-eig-ki, include=FALSE} # Daten vorbereiten Veränderung Abgänge der Kiefer in Brandenburg Abgangsgrund / Baumart ver_abg_bb_eig_ki_long <- ver_abg$ver_abg_bb_eig_ki_22 %>% # Daten für Gf in Long-Format bringen pivot_longer(cols = -c(Eigentumsart, Einheit), # Specify columns that should remain unchanged names_to = "Abgangsgrund", # New column name for the names of pivoted columns values_to = "Veränderung_Vorrat_Jahr") %>% # New column name for the values of pivoted columns filter((!Eigentumsart %in% c("Öffentlicher Wald", "Privatwald", "alle Eigentumsarten")),(!Abgangsgrund %in% c("alle Abgangsgründe"))) %>% # Exclude rows replace_na(list(Veränderung_Vorrat_Jahr= 0)) # Replace NA values in the "Veränderung_Waldfläche" column with 0 ``` ```{r ver-abg-bb-eig-ki-22, echo=FALSE} #Daten nach Abgangsgrund vorordnen ver_abg_bb_eig_ki_long <- ver_abg_bb_eig_ki_long %>% mutate(Abgangsgrund = factor(Abgangsgrund, levels = c("regulär", "Sturm", "Insekten / Dürre", "sonstige Kalamitäten", "Ursache der Kalamität ungewiss", "Ursache unbekannt", "Angabe fehlt"))) # Veränderung der Abgänge aller Baumarten pro Jahr in Brandenburg nach Eigentumsform ggplot(data = ver_abg_bb_eig_ki_long, aes(x = reorder(Eigentumsart,Veränderung_Vorrat_Jahr), y = Veränderung_Vorrat_Jahr, fill= Abgangsgrund)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Abgänge der Kiefer pro Jahr \nin Brandenburg nach Eigentumsart von 2012-2022") + labs(x = "Eigentumsart", y = "Veränderungen [m³/ha*a]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("regulär" = "#729ECE", # slightly muted blue "Sturm" = "#FDBF6F", # pastel orange "Insekten / Dürre" = "#73C476", # slightly muted green "sonstige Kalamitäten" = "#FF6F69", # slightly muted red "Ursache der Kalamität ungewiss" = "#B0B0B0", # grey "Ursache unbekannt" = "#D9D9D9", # light grey "Angabe fehlt" = "pink")) # very light grey # scale_fill_gradient(high = "darkseagreen4", low = "coral3") + #guides(fill = 'none') ``` #### Interpretation - Landeswald besonders von Kalamitäten betroffen = Feuer (?), instabile Bestandesstrukturen - Kalamität Feuer unter sonstige Kalamität , Feuer allg. zu vernachlässigen, viele Punkte sind das nicht ## Nutzungsart ### Nutzungsart in Brandenburg nach Baumart in 1000 m³ von 2012-2022 ```{r ver-nutz-bb-ba, include=FALSE} # Daten vorbereiten Veränderung Nutzungsart in Brandenburg nach Baumart ver_nutz_bb_ba_long <- ver_nutz$ver_nutz_bb_ba_22 %>% pivot_longer(cols = -c(Baumartengruppe, Einheit), names_to = "Nutzungsart", values_to = "Veränderung_Vorrat") ver_nutz_bb_ba_long <- ver_nutz_bb_ba_long %>% group_by(Baumartengruppe) %>% mutate(Prozent_Vorrat = ifelse(Nutzungsart == "alle Nutzungsarten", Veränderung_Vorrat, Veränderung_Vorrat / Veränderung_Vorrat[Nutzungsart == "alle Nutzungsarten"] * 100)) %>% ungroup() %>% filter((!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")),(!Nutzungsart %in% c("alle Nutzungsarten"))) %>% replace_na(list(Veränderung_Vorrat= 0)) # head(ver_nutz_bb_ba_long) ``` ```{r ver-nutz-bb-ba-22, echo=FALSE} #Daten nach Abgangsgrund vorordnen ver_nutz_bb_ba_long <- ver_nutz_bb_ba_long %>% mutate(Nutzungsart = factor(Nutzungsart, levels = c("keine Nutzung", "selektive Nutzung", "flächige Nutzung", "Angabe fehlt"))) # Veränderung der Abgänge aller Baumarten pro Jahr in Brandenburg nach Eigentumsform x <- ggplot(data = ver_nutz_bb_ba_long, aes(x = reorder(Baumartengruppe,Veränderung_Vorrat), y = Veränderung_Vorrat, fill= Nutzungsart)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Nutzungsart in \nBrandenburg nach Baumart von 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [1.000 m³]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("keine Nutzung" = "#FF6F69", # slightly muted blue "selektive Nutzung" = "forestgreen", # pastel orange "flächige Nutzung" = "#73C476", # slightly muted green "Angabe fehlt" = "#D9D9D9")) # light grey ``` ### Nutzungsart in Brandenburg nach Baumart in % von 2012-2022 ```{r ver-nutz-bb-ba-22-proz, echo=FALSE} #Daten nach Abgangsgrund vorordnen ver_nutz_bb_ba_long <- ver_nutz_bb_ba_long %>% mutate(Nutzungsart = factor(Nutzungsart, levels = c("keine Nutzung", "selektive Nutzung", "flächige Nutzung", "Angabe fehlt"))) # Veränderung der Abgänge aller Baumarten pro Jahr in Brandenburg nach Eigentumsform ggplot(data = ver_nutz_bb_ba_long, aes(x = reorder(Baumartengruppe,Veränderung_Vorrat), y = Prozent_Vorrat, fill= Nutzungsart)) + #aes(x = reorder(Baumartengruppe, Nutzungsart)) + geom_col() + geom_text(data = subset(ver_nutz_bb_ba_long, Nutzungsart == "flächige Nutzung"), aes(label = round(Prozent_Vorrat, 1)), position = position_stack(vjust = 0.5), # Adjust position for placement inside bars size = 3, color = "black", angle = 90) + ggtitle("Veränderungen der Nutzungsart in \nBrandenburg nach Baumart von 2012-2022") + labs(x = "Baumartengruppe", y = "Vorratsveränderungen [%]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("keine Nutzung" = "#FF6F69", # slightly muted blue "selektive Nutzung" = "forestgreen", # pastel orange "flächige Nutzung" = "#73C476", # slightly muted green "Angabe fehlt" = "#D9D9D9")) # light grey #guides(fill = 'none') ``` #### Interpretation - Kiefer, Fichte: Flächige Nutzung = Kalamitätsholz - Eiche und Buche quasi keine Kahlschläge vorhanden ### Nutzungsart in Brandenburg nach Baumart in m³/ha/a von 2012-2022 ```{r ver-nutz-bb-ba-jahr, include=FALSE} # Daten vorbereiten Veränderung Nutzungsart in Brandenburg nach Baumart ver_nutz_bb_ba_jahr_long <- ver_nutz$ver_nutz_bb_ba_22_jahr %>% pivot_longer(cols = -c(Baumartengruppe, Einheit), names_to = "Nutzungsart", values_to = "Veränderung_Vorrat") %>% filter((!Baumartengruppe %in% c("alle Laubbäume", "alle Nadelbäume", "alle Baumarten")),(!Nutzungsart %in% c("alle Nutzungsarten"))) %>% replace_na(list(Veränderung_Vorrat= 0)) ``` ```{r ver-nutz-bb-ba-jahr-22, echo=FALSE} #Daten nach Abgangsgrund vorordnen ver_nutz_bb_ba_jahr_long <- ver_nutz_bb_ba_jahr_long %>% mutate(Nutzungsart = factor(Nutzungsart, levels = c("keine Nutzung", "selektive Nutzung", "flächige Nutzung", "Angabe fehlt"))) # Veränderung der Abgänge aller Baumarten pro Jahr in Brandenburg nach Eigentumsform ggplot(data = ver_nutz_bb_ba_jahr_long, aes(x = reorder(Baumartengruppe,Veränderung_Vorrat), y = Veränderung_Vorrat, fill= Nutzungsart)) + #aes(x = reorder(Baumart, Veränderung_Waldfläche) geom_col() + ggtitle("Veränderungen der Nutzungsart in \nBrandenburg nach Baumart von 2012-2022") + labs(x = "Baumartengruppe", y = "Veränderungen [m³/ha*a]") + #scale_y_continuous(labels = label_number(suffix = " Tsd")) + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1), plot.title = element_text(hjust = 0.5), plot.title.position = "plot") + scale_fill_manual(values = c("keine Nutzung" = "#FF6F69", # slightly muted blue "selektive Nutzung" = "forestgreen", # pastel orange "flächige Nutzung" = "#73C476", # slightly muted green "Angabe fehlt" = "#D9D9D9")) # light grey # scale_fill_gradient(high = "darkseagreen4", low = "coral3") + #guides(fill = 'none') ``` #### Interpretation - sinnlose Darstellung? Besser Nutzung im Vergleich zur Menge der Baumart? - keine Nutzung = Baum ist gefällt aber liegt noch ## Nächte Themen? - Zuwachs vs. Nutzung - Welche Schwerpunkte noch bis FCK / BLK