-
Notifications
You must be signed in to change notification settings - Fork 1
/
analysis-3.Rmd
104 lines (91 loc) · 3.68 KB
/
analysis-3.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
---
runtime: shiny
output: html_document
---
# Analysis 3: RMarkdown notebook rendered in RShiny with interactive widgets
## Funky interactive widgets, maaaaaan! 🤘
```{r echo = FALSE}
selectInput("n_breaks", label = "Number of wheelie bins:",
choices = c(10, 20, 35, 50), selected = 20)
sliderInput("bw_adjust", label = "Bandwidth ... width:",
min = 0.2, max = 2, value = 1, step = 0.2)
```
```{r echo=FALSE, message=FALSE}
library(tidyverse)
library(ggplot2)
library(patchwork)
```
## Here is the same analysis done in the other notebooks
Load the data in `data/`:
```{r echo=TRUE}
indir = 'data/'
fname_1 = 'Sep2021_Liaoning_data.csv'
fname_2 = 'Sep2021_Jilin_data.csv'
fname_3 = 'Sep2021_Heilongjiang_data.csv'
provs = c("Liaoning", "Jilin", "Heilongjiang")
yield_1 = read.csv(paste(indir,fname_1, sep=""), header = TRUE,sep = ",", stringsAsFactors = FALSE)
yield_2 = read.csv(paste(indir,fname_2, sep=""), header = TRUE,sep = ",", stringsAsFactors = FALSE)
yield_3 = read.csv(paste(indir,fname_3, sep=""), header = TRUE,sep = ",", stringsAsFactors = FALSE)
```
Create a function that creates the plots:
```{r echo=TRUE}
scatter_trend_plot = function(data, x, y, title, xlab="var", ylab="Normalised maize yield", method=lm) {
plot = ggplot(data=data, aes(x={{x}}, y={{y}})) +
geom_point() +
geom_smooth(method={{method}}) +
labs(title=title, x=xlab, y=ylab)
return(plot)
}
```
Generate the plots for each of the datasets:
```{r echo=TRUE}
ljun = scatter_trend_plot(data=yield_1,
x=Jun.T,
y=Maize.yield.anomaly,
title=provs[1],
xlab="June Temperature / degrees C",)
ljul = scatter_trend_plot(data=yield_1,
x=Jul.T,
y=Maize.yield.anomaly,
title=provs[1],
xlab="July Temperature / degrees C",)
laug = scatter_trend_plot(data=yield_1,
x=Aug.T,
y=Maize.yield.anomaly,
title=provs[1],
xlab="August Temperature / degrees C",)
jjun = scatter_trend_plot(data=yield_2,
x=Jun.T,
y=Maize.yield.anomaly,
title=provs[2],
xlab="June Temperature / degrees C",)
jjul = scatter_trend_plot(data=yield_2,
x=Jul.T,
y=Maize.yield.anomaly,
title=provs[2],
xlab="July Temperature / degrees C",)
jaug = scatter_trend_plot(data=yield_2,
x=Aug.T,
y=Maize.yield.anomaly,
title=provs[2],
xlab="August Temperature / degrees C",)
hjun = scatter_trend_plot(data=yield_3,
x=Jun.T,
y=Maize.yield.anomaly,
title=provs[3],
xlab="June Temperature / degrees C",)
hjul = scatter_trend_plot(data=yield_3,
x=Jul.T,
y=Maize.yield.anomaly,
title=provs[3],
xlab="July Temperature / degrees C",)
haug = scatter_trend_plot(data=yield_3,
x=Aug.T,
y=Maize.yield.anomaly,
title=provs[3],
xlab="August Temperature / degrees C",)
```
Then assemble the plots together using `patchwork`
```{r echo=TRUE, message=FALSE, warning=FALSE}
(ljun+ljul+laug)/(jjun+jjul+jaug)/(hjun+hjul+haug)
```