Ziel dieses 12 Stunden Mikro-Forschungsprojektes, im Rahmen des HACK AND HARVEST 2021, war die Berechnung der elementaren CO2-Bilanz für Konstanz, die Differenz von CO2-Erzeugung von Konstanzer:innen durch Atmung auf der einen und der CO2-Aufnahme der konstanzer Vegetation auf der anderen Seite. Beschränkt habe ich mich hier, aufgrund der Datenlage, auf erwachsene Konstanzer einerseits und Bäume der Stadt Konstanz andererseits.
Sys.setlocale("LC_ALL","de_DE")
## [1] "de_DE/de_DE/de_DE/C/de_DE/en_US.UTF-8"
rm(list=ls())
library(forcats)
library(ggplot2)
library(ggmap)
library(dplyr)
library(kableExtra)
library(osmdata)
library(tidyr)
raw <- read.csv('data/KN_Baumkataster_2020.csv', strip.white=TRUE) %>%
rename(x = X.X) %>%
rename(y = Y) %>%
rename(hoehe = hoeheM) %>%
rename(kronendurchmesser = kronendurchmesserM) %>%
rename(stammumfang = stammumfangCM) %>%
rename(name_de = Name_dt) %>%
rename(name_la = Name_lat) %>%
rename(standort = location)
Das Baumkataster der Stadt Konstanzer enthält in Summe 15711 Bäume.
Das Baumkataster der Stadt Konstanz enthält 68 verschiedene Gattungen, 131 Einträge haben hier keinen gültigen Wert.
N <- 50
data <- kataster %>%
filter(!is.na(gattung)) %>%
group_by(gattung) %>%
summarize(n = n()) %>%
filter(n > N) %>%
arrange(desc(n))
ggplot(data) +
geom_bar(aes(x=reorder(gattung, -n), y=n), stat = "identity") +
labs(title=paste0('Bäume der Stadt Konstanz (Gattungen), Anzahl > ', N), x='Gattung', y='Anzahl Bäume') +
theme_bw() +
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
Abbildung: Verteilung der Bäume der Stadt Konstanz für Gattungen mit mehr als 50 Bäumen.
N <- 10
#bb <- c(9.08, 47.65, 9.22, 47.75)
#map <- get_stamenmap(bb, maptype="terrain", zoom=14)
bb <- c(9.12, 47.65, 9.22, 47.70)
map <- get_stamenmap(bb, maptype="terrain", zoom=15)
df <- kataster %>%
filter(!is.na(gattung)) %>%
filter(x >= bb[1] & x <= bb[3]) %>%
filter(y >= bb[2] & y <= bb[4]) %>%
group_by(gattung) %>%
summarize(n=n()) %>%
arrange(desc(n)) %>%
top_n(N)
data <- kataster %>%
filter(gattung %in% df$gattung) %>%
filter(x >= bb[1] & x <= bb[3]) %>%
filter(y >= bb[2] & y <= bb[4])
ggmap(map) +
geom_point(data=data, aes(x=x, y=y, color=gattung), size=0.5, alpha=0.25) +
labs(title=paste0('Bäume der Stadt Konstanz (Gattungen, Top ', N, ')')) +
theme_void() +
theme(legend.position="bottom") +
scale_color_discrete(name='Gattung') +
guides(color=guide_legend(override.aes=list(alpha=1, size=1)))