Klimadata er prossesert av Markus F. Isaksen og dokumenteres i på en annen side. Her tar vi bare inn dataene og plotter de.
Disse dataene er klippet slik at det bare kommer fra fjellarealer.
err <- read_excel("P:/41201042_okologisk_tilstand_fastlandsnorge_2020_dataanaly/fjell2021/data/Klima/Sum nedbør/sumPrecip_med.xlsx")
head(err)
## # A tibble: 5 x 5
## area variable norm_med `norm_-2SD` `norm_+2SD`
## <chr> <chr> <chr> <chr> <chr>
## 1 norge-norge sumPrecip 337.299987792969 231.449392384015 443.150583201922
## 2 midt-norge sumPrecip 536.5 341.280301197751 731.719698802249
## 3 østlandet sumPrecip 389 270.869232292712 507.130767707288
## 4 vestlandet sumPrecip 830.099975585938 555.063508136966 1105.13644303491
## 5 sørlandet sumPrecip 651.5 433.86440688434 869.13559311566
Her ser vi medianen og variasjonen til denne variablene under forrige normalperiode 1961-1990. La oss normalisere disse.
names(err) <- c("Region", "variable", "median", "low", "upp")
err$low <- as.numeric(err$low)
err$upp <- as.numeric(err$upp)
err$median <- as.numeric(err$median)
err$low <- err$low - err$median
err$upp <- err$upp - err$median
err$Region[err$Region=="norge-norge"] <- "Nord-Norge"
err$Region[err$Region=="midt-norge"] <- "Midt-Norge"
err$Region[err$Region=="østlandet"] <- "Østlandet"
err$Region[err$Region=="vestlandet"] <- "Vestlandet"
err$Region[err$Region=="sørlandet"] <- "Sørlandet"
dat <- read_excel("P:/41201042_okologisk_tilstand_fastlandsnorge_2020_dataanaly/fjell2021/data/Klima/Sum nedbør/sumPrecip_diff.xlsx")
head(dat)
## # A tibble: 6 x 7
## year `nord-norge` `midt-norge` østlandet vestlandet sørlandet variable
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <chr>
## 1 1957 -33.5 -12.4 66.6 47.9 -27.5 sumPrecip
## 2 1958 -29.5 -38.5 -16.3 -76.7 -45.4 sumPrecip
## 3 1959 125 -63.9 -124. -189. -228. sumPrecip
## 4 1960 -28.5 -42.8 38.2 -223. -80.7 sumPrecip
## 5 1961 31.5 9.30 46.4 65.4 77.5 sumPrecip
## 6 1962 -52 61.6 -15.2 -50.8 -62.2 sumPrecip
Her ser vi gjennomsnittlig årsnedbør siste 5 år minus gjennomsnittet i normalperioden.
setDT(dat)
dat <- melt(dat,
measure.vars = names(dat)[2:6],
id.vars = "year",
variable.name = "Region")
dat$Region <- as.character(dat$Region)
dat$Region[dat$Region=="nord-norge"] <- "Nord-Norge"
dat$Region[dat$Region=="midt-norge"] <- "Midt-Norge"
dat$Region[dat$Region=="østlandet"] <- "Østlandet"
dat$Region[dat$Region=="vestlandet"] <- "Vestlandet"
dat$Region[dat$Region=="sørlandet"] <- "Sørlandet"
regOrder = c(
"Nord-Norge",
"Midt-Norge",
"Østlandet",
"Vestlandet",
"Sørlandet"
)
dat$col <- ifelse(dat$value<0, "one", "two")
fig_nedbør <- ggplot()+
geom_bar(data = dat,
aes(x = year,
y = value,
fill = col),
stat="identity")+
geom_smooth(data = dat,
aes(x = year,
y = value))+
ylab("Årsnedbør (mm)\navvik fra 1961-1990")+
xlab("")+
geom_hline(yintercept=0)+
geom_hline(data = err, aes(yintercept=low), linetype=2)+
geom_hline(data = err, aes(yintercept=upp), linetype=2)+
theme_bw(base_size = 20)+
theme(
axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))+
guides(fill="none")+
facet_wrap(.~factor(Region, levels = regOrder), scales = "free_y")
png("../output/paavirkningsindikatorer/facet plot/årsnedbør_tidsserie.png",
units="in", width=10, height=7, res=300)
fig_nedbør
dev.off()
Tbl <- dat
Tbl$Region <- as.factor(Tbl$Region)
names(Tbl) <- c("year", "reg", "diff", "col")
regOrder = c("Østlandet","Sørlandet","Vestlandet","Midt-Norge","Nord-Norge")
Tbl <- Tbl[order(match(Tbl$reg,regOrder),Tbl$year),]
minyear <- 1958
maxyear <- 2021
upperYlimit <- 420
lowYlimit <- -400
yStep <- 200
move <- 0.2
legendPosition <- "top"
legendInset = 0
horizontal = TRUE
legendTextSize = 1.25
colours = c("#2DCCD3", "#004F71", "#7A9A01", "#93328E", "#FFB25B")
# Create loop factors
uniq1 <- unique(unlist(Tbl$year))
uniq2 <- unique(unlist(Tbl$reg))
### PLOT first Norway
# Subset for region 'E'
Norge <- subset(Tbl, reg=="Østlandet")
png("../output/paavirkningsindikatorer/enkel stil/årsnedbør.png",
units="in", width=12, height=7, res=300)
par(mar=c(4.5,6.5,2,2))
# Plot for region = 'Norge'
plot(
Norge$diff~Norge$year,
ylab="Årsnedbør (mm)\navvik fra normalperioden (1961-1990)",
xlab="",
main="",
xlim=c(minyear, maxyear),
ylim=c(lowYlimit, upperYlimit),
cex.main=1,
cex.lab=1.5,
cex.axis=1.5,
type="n",
frame.plot=FALSE,
axes=FALSE
)
# Axis 1 options
axis(side=1, at=c(seq(1960, 2020, by=10)), cex.axis=1.5)
# Axis 2 options
axis(side=2, at=seq(lowYlimit, upperYlimit, yStep),
labels=seq(lowYlimit, upperYlimit, yStep),
cex.axis=1.5)
# Add lines
lines(Norge$year+(move*(-2.5)), Norge$diff, col=colours[5], lwd=2, lty=1)
# Save temp points for later addition to plot
temppoints <- data.frame(year = Norge$year, med = Norge$diff)
# Empty temporary points data frame
temppoints3 <- data.frame()
### Then plot loop per region
for(n in 1:(length(uniq2)-1)){
# Subset for region i
quants <- subset(Tbl, reg==uniq2[n])
# Add lines
lines(quants$year+move*(n-2.5), quants$diff, col=colours[n], lwd=2, lty=1)
# Save temp points for later addition to plot
temppoints2 <- data.frame(year = quants$year, med = quants$diff, reg = uniq2[n])
temppoints3 <- rbind(temppoints3, temppoints2)
}
# # Add points for regions
# for(n in 1:(length(uniq2)-1)){
# temppoints4 <- temppoints3[temppoints3$reg==uniq2[n],]
# points(temppoints4$year+move*(n-2.5),temppoints4$diff, pch=21, bg=colours[n], cex=1.5)
# }
#
# # Add points for Norge
# points(temppoints$year+(move*(-2.5)),temppoints$diff, pch=21, bg=colours[5], cex=1.5)
# Add legend to plot
legend(legendPosition, legendPositionY, legend = regOrder, col = c(colours[5], colours[1:4]),
#bg = c(colours),
pch=16, lty=2,
lwd=1.5, bty="n", inset=legendInset, title="", horiz = horizontal,
cex=legendTextSize)
# add reference line
abline(h=0, col="black", lwd=2, lty=2)
dev.off()
dager_err <- read_excel("P:/41201042_okologisk_tilstand_fastlandsnorge_2020_dataanaly/fjell2021/data/Klima/Dager med nedbør/daysPrecip_med.xlsx")
names(dager_err) <- c("Region", "variable", "median", "low", "upp")
dager_err$low <- as.numeric(dager_err$low)
dager_err$upp <- as.numeric(dager_err$upp)
dager_err$median <- as.numeric(dager_err$median)
dager_err$low <-
dager_err$low - dager_err$median
dager_err$upp <-
dager_err$upp - dager_err$median
dager_err$Region[dager_err$Region=="nord-norge"] <- "Nord-Norge"
dager_err$Region[dager_err$Region=="midt-norge"] <- "Midt-Norge"
dager_err$Region[dager_err$Region=="østlandet"] <- "Østlandet"
dager_err$Region[dager_err$Region=="vestlandet"] <- "Vestlandet"
dager_err$Region[dager_err$Region=="sørlandet"] <- "Sørlandet"
dager <- read_excel("P:/41201042_okologisk_tilstand_fastlandsnorge_2020_dataanaly/fjell2021/data/Klima/Dager med nedbør/daysPrecip_diff.xlsx")
setDT(dager)
dager <- melt(dager,
measure.vars = names(dager)[2:6],
id.vars = "year",
variable.name = "Region")
dager$Region <- as.character(dager$Region)
dager$Region[dager$Region=="nord-norge"] <- "Nord-Norge"
dager$Region[dager$Region=="midt-norge"] <- "Midt-Norge"
dager$Region[dager$Region=="østlandet"] <- "Østlandet"
dager$Region[dager$Region=="vestlandet"] <- "Vestlandet"
dager$Region[dager$Region=="sørlandet"] <- "Sørlandet"
regOrder = c(
"Nord-Norge",
"Midt-Norge",
"Østlandet",
"Vestlandet",
"Sørlandet"
)
dager$col <- ifelse(dager$value<0, "one", "two")
fig_dager <- ggplot()+
geom_bar(data = dager,
aes(x= year,
y= value,
fill=col),
stat="identity")+
scale_fill_hue(l=70, c=60)+
geom_smooth(data = dager,
aes(x= year,
y= value))+
ylab("Antall dager med nedbør\navvik fra 1961-1990")+
xlab("")+
geom_hline(yintercept=0)+
geom_hline(data = dager_err,
aes(yintercept=low), linetype=2)+
geom_hline(data = dager_err,
aes(yintercept=upp), linetype=2)+
theme_bw(base_size = 20)+
theme(axis.text.x =
element_text(angle = 90, vjust = 0.5, hjust=1))+
guides(fill="none")+
facet_wrap(.~factor(Region, levels = regOrder))
png("../output/paavirkningsindikatorer/facet plot/dagerMedNedbør_tidsserie.png",
units="in", width=10, height=7, res=300)
fig_dager
dev.off()
Det er tydelig at antall dager med nedbør har økt, såpass mye at gjennomsnittet de siste fem årene på sør- og østlandet vill blitt kalt ekstremår i forrige normalperiode (over 2 standardavvik fra normalen.)
Tbl <- dager
names(Tbl) <- c("year", "reg", "diff", "col")
regOrder = c("Østlandet","Sørlandet","Vestlandet","Midt-Norge","Nord-Norge")
Tbl <- Tbl[order(match(Tbl$reg,regOrder),Tbl$year),]
minyear <- 1958
maxyear <- 2021
upperYlimit <- 50
lowYlimit <- -40
yStep <- 20
move <- 0.2
legendPosition <- "top"
legendInset = 0
horizontal = TRUE
legendTextSize = 1.25
colours = c("#2DCCD3", "#004F71", "#7A9A01", "#93328E", "#FFB25B")
# Create loop factors
uniq1 <- unique(unlist(Tbl$year))
uniq2 <- unique(unlist(Tbl$reg))
### PLOT first Norway
# Subset for region 'E'
Norge <- subset(Tbl, reg=="Østlandet")
png("../output/paavirkningsindikatorer/enkel stil/dager med nedbør.png",
units="in", width=12, height=7, res=300)
par(mar=c(4.5,6.5,2,2))
# Plot for region = 'Norge'
plot(
Norge$diff~Norge$year,
ylab="Antall dager med nebør\navvik fra 1961-1990",
xlab="",
main="",
xlim=c(minyear, maxyear),
ylim=c(lowYlimit, upperYlimit),
cex.main=1,
cex.lab=1.5,
cex.axis=1.5,
type="n",
frame.plot=FALSE,
axes=FALSE
)
# Axis 1 options
axis(side=1, at=c(seq(1960, 2020, by=10)), cex.axis=1.5)
# Axis 2 options
axis(side=2, at=seq(lowYlimit, upperYlimit, yStep),
labels=seq(lowYlimit, upperYlimit, yStep),
cex.axis=1.5)
# Add lines
lines(Norge$year+(move*(-2.5)), Norge$diff, col=colours[5], lwd=2, lty=1)
# Save temp points for later addition to plot
temppoints <- data.frame(year = Norge$year, med = Norge$diff)
# Empty temporary points data frame
temppoints3 <- data.frame()
### Then plot loop per region
for(n in 1:(length(uniq2)-1)){
# Subset for region i
quants <- subset(Tbl, reg==uniq2[n])
# Add lines
lines(quants$year+move*(n-2.5), quants$diff, col=colours[n], lwd=2, lty=1)
# Save temp points for later addition to plot
temppoints2 <- data.frame(year = quants$year, med = quants$diff, reg = uniq2[n])
temppoints3 <- rbind(temppoints3, temppoints2)
}
# # Add points for regions
# for(n in 1:(length(uniq2)-1)){
# temppoints4 <- temppoints3[temppoints3$reg==uniq2[n],]
# points(temppoints4$year+move*(n-2.5),temppoints4$diff, pch=21, #bg=colours[n], cex=1.5)
# }
#
# # Add points for Norge
# points(temppoints$year+(move*(-2.5)),temppoints$diff, pch=21, #bg=colours[5], cex=1.5)
# Add legend to plot
legend(legendPosition, legendPositionY, legend = regOrder, col = c(colours[5], colours[1:4]),
#bg = c(colours),
pch=16, lty=2,
lwd=1.5, bty="n", inset=legendInset, title="", horiz = horizontal,
cex=legendTextSize)
# add reference line
abline(h=0, col="black", lwd=2, lty=2)
dev.off()