Commit 4488c0bd authored by Heraut Louis's avatar Heraut Louis
Browse files

Plot modularity

parent 7bc064d0
No related merge requests found
Showing with 62 additions and 65 deletions
+62 -65
......@@ -104,6 +104,8 @@ panel = function (df_data, df_meta, layout_matrix, figdir='', filedir_opt='', fi
P[[2]] = Htime
}
nbcol = ncol(as.matrix(layout_matrix))
for (i in 1:nbp) {
df_data = list_df2plot[[i]]$data
df_trend = list_df2plot[[i]]$trend
......@@ -111,24 +113,33 @@ panel = function (df_data, df_meta, layout_matrix, figdir='', filedir_opt='', fi
unit2day = list_df2plot[[i]]$unit2day
missRect = list_df2plot[[i]]$missRect
type = list_df2plot[[i]]$type
p = time_panel(code, df_data, df_trend, missRect,
p_threshold, unit2day, type)
p_threshold, unit2day, type,
last=(i > nbp-nbcol))
P[[i+nbh]] = p
}
layout_matrix_H = as.matrix(layout_matrix + nbh)
layout_matrix = as.matrix(layout_matrix)
nel = nrow(layout_matrix)*ncol(layout_matrix)
##
idNA = which(is.na(layout_matrix), arr.ind=TRUE)
layout_matrix[idNA] = seq(max(layout_matrix, na.rm=TRUE) + 1,
max(layout_matrix, na.rm=TRUE) + 1 +
nel)
##
layout_matrix_H = layout_matrix + nbh
print(layout_matrix_H)
LM = c()
LMcol = ncol(layout_matrix_H)
LMrow = nrow(layout_matrix_H)
for (i in 1:(LMrow+nbh)) {
print(i)
if (i <= nbh) {
LM = rbind(LM, rep(i, times=LMcol))
......@@ -137,36 +148,11 @@ panel = function (df_data, df_meta, layout_matrix, figdir='', filedir_opt='', fi
matrix(rep(layout_matrix_H[i-nbh,],
times=header_ratio),
ncol=LMcol, byrow=TRUE))
}
}
print(nbg)
print(LM)
}}
plot = grid.arrange(grobs=P, layout_matrix=LM)
# if (nbnh <= 4) {
# plot = grid.arrange(grobs=P,
# heights=c(rep(1/(nbnh*ratio + nbh),
# nbh),
# rep(ratio/(nbnh*ratio + nbh),
# nbnh)),
# ncol=1, nrow=nbg)
# } else if (nbnh > 4) {
# P[[(length(P)+1):8]] = void
# plot = grid.arrange(grobs=P,
# heights=c(rep(1/((nbg-2)*2+2), 1),
# rep(2/((nbg-2)*2+2), nbg-2)),
# ncol=1, nrow=nbg)
# }
# } else if (nbg-2 <= 6 & nbg-2 > 3) {
#
# }
# plot = grid.arrange(rbind(cbind(ggplotGrob(P[[2]]), ggplotGrob(P[[2]])), cbind(ggplotGrob(P[[3]]), ggplotGrob(P[[3]]))), heights=c(1/3, 2/3))
# Saving
......@@ -187,7 +173,7 @@ panel = function (df_data, df_meta, layout_matrix, figdir='', filedir_opt='', fi
time_panel = function (code, df_data, df_trend, missRect, p_threshold, unit2day, type) {
time_panel = function (code, df_data, df_trend, missRect, p_threshold, unit2day, type, last=FALSE) {
if (type == 'sqrt') {
df_data[, 'Qm3s'] = apply(df_data[, 'Qm3s'], 1, sqrt)
......@@ -244,9 +230,13 @@ time_panel = function (code, df_data, df_trend, missRect, p_threshold, unit2day,
date_labels="%Y",
limits=c(min(df_data_code$Date),
max(df_data_code$Date)),
expand=c(0, 0))
if (type == 'sqrt') {
expand=c(0, 0)) +
annotate('text',
x=as.Date(as.numeric(max(df_data_code$Date))*0.9),
y=max(df_data_code$Qm3s, na.rm=TRUE)*1.05,
label=type)
if (type == 'sqrt') {
p = p +
scale_y_continuous(breaks=seq(0, 100, 10),
minor_breaks=seq(0, 100, 5),
......@@ -270,11 +260,18 @@ time_panel = function (code, df_data, df_trend, missRect, p_threshold, unit2day,
expand=c(0, 0))
}
# if
p = p +
theme(
panel.background=element_rect(fill="white"),
plot.margin=margin(0.25, 5, 0.25, 5, unit="mm"))
if (last) {
p = p +
theme(
panel.background=element_rect(fill="white"),
plot.margin=margin(1, 5, 5, 5, unit="mm"))
} else {
p = p +
theme(
panel.background=element_rect(fill="white"),
plot.margin=margin(1, 5, 1, 5, unit="mm"))
}
return(p)
}
......
......@@ -155,30 +155,30 @@ res_VCN10trend = get_VCN10trend(df_data, df_meta, period)
# TIME PANEL #
# Plot time panel of debit by stations
# panel(list(df_data, df_data),
# layout_matrix=c(1, 2),
# df_meta=df_meta,
# missRect=list(TRUE, TRUE),
# type=list('time', 'sqrt'),
# info_header=TRUE,
# time_header=NULL,
# header_ratio=3,
# figdir=figdir,
# filename_opt='time')
panel(list(res_QAtrend$data, res_QMNAtrend$data,
res_VCN10trend$data),
layout_matrix=matrix(c(1, 2, 3, 3), ncol=2, byrow=TRUE),
df_meta=df_meta,
df_trend=list(res_QAtrend$trend, res_QMNAtrend$trend,
res_VCN10trend$trend),
type=list('', '', ''),
missRect=list(TRUE, TRUE, TRUE),
panel(list(df_data, df_data),
layout_matrix=c(1, 2),
df_meta=df_meta,
missRect=list(TRUE, TRUE),
type=list('time', 'sqrt'),
info_header=TRUE,
time_header=df_data,
header_ratio=2,
time_header=NULL,
header_ratio=3,
figdir=figdir,
filename_opt='')
filename_opt='time')
# panel(list(res_QAtrend$data, res_QMNAtrend$data,
# res_VCN10trend$data),
# layout_matrix=c(1, 2, 3),
# df_meta=df_meta,
# df_trend=list(res_QAtrend$trend, res_QMNAtrend$trend,
# res_VCN10trend$trend),
# type=list(expression(Q_A), '', ''),
# missRect=list(TRUE, TRUE, TRUE),
# info_header=TRUE,
# time_header=df_data,
# header_ratio=2,
# figdir=figdir,
# filename_opt='')
### /!\ Removed 185 row(s) containing missing values (geom_path) -> remove NA ###
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment