@@ -19,6 +19,7 @@ if (!file.exists(file)){
19
19
}else {
20
20
load(file )
21
21
}
22
+
22
23
# load("D:/Documents/GoogleDrive/phenofit.rda")
23
24
24
25
methods <- c(' AG' , ' BECK' , ' ELMORE' , ' ZHANG' , ' whit_R' , ' whit_gee' )[- 5 ]
@@ -29,35 +30,58 @@ prefix <- c("phenoflux", "phenocam")[i]
29
30
df <- if (i == 1 ) df_flux else df_cam
30
31
st <- if (i == 1 ) st_flux else st_cam
31
32
32
- df <- df [iters == " iter2" ]
33
33
st $ IGBPname %<> % factor (IGBPnames_006 )
34
+ st <- st [order(IGBPname ,site ), ] # reorder according to IGBP
35
+ st [site %in% sites_sel , titlestr : = sprintf(" (%s) %s, %s" , letters [1 : .N ],site , IGBPname )]
34
36
35
37
# make sure different curve fitting methods have the same length fitting
36
- formula <- if (i == 1 ) formula(site + date + t + y + GPP_NT + GPP_DT + SummaryQA ~ meth ) else
37
- formula(site + date + t + y + gcc + vci + SummaryQA ~ meth )
38
-
39
- over_perform(df , formula , prefix )
38
+ formula <- if (i == 1 ) formula(site + date + t + y + GPP_NT + GPP_DT + SummaryQA + iters ~ meth ) else
39
+ formula(site + date + t + y + gcc + vci + SummaryQA + iters ~ meth )
40
+ IGBP.all = F
41
+ if (i == 1 ){
42
+ over_perform(df [iters == " iter2" ], formula , prefix , IGBP.all = IGBP.all )
43
+ } else {
44
+ over_perform(df [iters == " iter2" ], formula , prefix , ylim2 = c(64 , 100 ), IGBP.all = IGBP.all )
45
+ }
40
46
41
47
# site figure data input
42
-
43
48
df_trim <- dcast(df , formula , value.var = " value" , fun.aggregate = mean ) # %>% na.omit()
44
49
df_trim $ SummaryQA %<> % factor (qc_levels )
45
50
# df_trim <- melt(df_trim, measure.vars = methods, variable.name = "meth")
46
51
47
- sites <- unique(df $ site )
52
+ sites <- st $ site
53
+ # sites <- unique(df$site)
48
54
sitename <- sites [100 ]
49
55
50
- vars <- c(" get_range" , " save_pdf" , " lgd_vci" , " lgd_gpp" ,
51
- " qc_levels" , " qc_colors" , " qc_shapes" , " methods" )
52
- cl <- cluster_Init(pkgs = c(" data.table" , " ggplot2" , " magrittr" ))
53
- clusterExport(cl , vars )
54
- res <- parLapplyLB(cl , sites , plot_whit ,
55
- df_trim , st , prefix_fig = paste0(" whit_" , prefix ))
56
- for (i in seq_along(sites )){
57
- runningId(i )
58
- sitename <- sites [i ]
59
- plot_whit(sitename , df_trim , st , prefix_fig = paste0(" whit_" , prefix ))
56
+ # vars <- c("get_range", "save_pdf", "lgd_vci", "lgd_gpp",
57
+ # "qc_levels", "qc_colors", "qc_shapes", "methods")
58
+ # cl <- cluster_Init(pkgs = c("data.table", "ggplot2", "magrittr"))
59
+ # clusterExport(cl, vars)
60
+ # res <- parLapplyLB(cl, sites, plot_whit,
61
+ # df_trim, st, prefix_fig = paste0("whit_", prefix))
62
+
63
+ plot_whits <- function (sites , df_trim , file ){
64
+ ps <- list ()
65
+ for (i in seq_along(sites )){
66
+ runningId(i )
67
+ sitename <- sites [i ]
68
+ # for single method, ggplot obj return
69
+ ps [[i ]] <- plot_methods(sitename , df_trim , st , prefix_fig = paste0(" whit_" , prefix ), methods = " whit_gee" , show.legend = F )
70
+ # print(p)
71
+ # for all methods, grob obj return
72
+ # p <- plot_methods(sitename, df_trim, st, prefix_fig = paste0("whit_", prefix), methods)
73
+ }
74
+
75
+ ylab_r <- expression(" GPP ( gC " * mm ^- 1 * d ^- 1 * " )" )
76
+ # ylab_r <- "VCI"
77
+ FigsToPages(ps , lgd_gpp , ylab_r , file , width = 10 )
60
78
}
79
+ plot_whits(sites , df_trim , " gee_whit_flux166.pdf" ) # all sites
80
+
81
+ # # 2. select representative points for fluxnet
82
+ sites_sel <- c(" RU-Fyo" , " FR-Pue" , " US-UMB" , " BE-Vie" , " US-KS2" , " US-Whs" ,
83
+ " AU-How" , " AU-Dry" , " CH-Fru" , " US-Los" , " DE-Geb" )
84
+ plot_whits(sites_sel , df_trim , " gee_whit_flux11.pdf" ) # all sites
61
85
62
86
# merge_pdf('../whit_phenoflux166.pdf', indir = "./")
63
87
# merge_pdf('whit_phenoflux166.pdf', indir = "Figure/")
@@ -77,6 +101,5 @@ merge_pdf('whit_phenoflux166.pdf', indir = "Figure", "whit_phenoflux.*.pdf", del
77
101
# "snow/ice" = "#F8766D", "cloud" = "#C77CFF"), drop = F) +
78
102
# scale_shape_manual(values = c(19, 15, 4, 17), drop = F) +
79
103
# scale_y_continuous(lim = lim_raw)
80
-
81
104
# p3 <- ggplot_dual_axis(p1, p2) #%>% as.ggplot()
82
105
# p <- ggplot_dual_axis(p3, p0, add_yaxis_r = F)
0 commit comments