SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
CENTRE REGIONAL AGRHYMET
Devoir d’Analyse de données I - IA3
HOUNGNIBO Mandela, Kosi Tchaa et Ibrahim Laminou
28 octobre 2018
Table des matières
1. Variabilité saisonnière et interannuelle des différents paramètres clima-
tiques 3
1.1 Variabilité saisonnière . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Moyenne sur la période 1961-2009 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 Variabilité saisonnière Températures . . . . . . . . . . . . . . . . . . . 5
1.1.2 Variabilité saisonnière Humidités . . . . . . . . . . . . . . . . . . . . . 7
1.1.3 Variabilité saisonnière Insolation . . . . . . . . . . . . . . . . . . . . . . 8
1.1.4 Variabilité saisonnière Vent . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.5 Variabilité saisonnière Pluie . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 Variabilité interannuelle des paramètres climatiques . . . . . . . . . . . . . . . 13
1.2.1 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . 14
1.2.2 Variabilité des précipitations annuelles . . . . . . . . . . . . . . . . . . 19
1.2.3 Variabilité des vitesses de vent . . . . . . . . . . . . . . . . . . . . . . . 21
1.2.4 Variabilité des paramètres Humidité et insolation . . . . . . . . . . . . 22
2. Date de début et Date de fin de saison, nombre de jour de pluie 23
2.1 Date de début de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2 Date de fin de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 Longueur de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.4 Nombre de jour de pluie dans la saison . . . . . . . . . . . . . . . . . . . . . . 34
3. Corrélations entre les paramètres climatiques 36
4. Zone agroclimatique et changements attendus 38
Liste des tableaux
1 Corrélations entre les variables . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Liste des figures
1 Régime de Températures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1
2 Régime Hygrométrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Durée d’insolation mensuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Vent saisonnier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 Occurence des vitesses de vent . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6 Régime pluviométrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
7 Fréquence des Pluies journalières et mensuelles . . . . . . . . . . . . . . . . . 12
8 Evolution de la Pluviométrie et de la Température Moyennes 1961-2009 . . . 13
9 Evolution des températures . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
10 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . . . . 17
11 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . . . . 18
12 Evolution des précipitations annuelles . . . . . . . . . . . . . . . . . . . . . . 20
13 Variabilité des précipitations annuelles . . . . . . . . . . . . . . . . . . . . . 21
14 Vent : vitesse interannuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
15 Evolution interannuelle de l’insolation et de l’humidité . . . . . . . . . . . . 23
16 Date de début de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
17 Variabilité des dates de début . . . . . . . . . . . . . . . . . . . . . . . . . . 27
18 Evolution des dates de fin de saison . . . . . . . . . . . . . . . . . . . . . . . 31
19 comparaison de la distribution des dates de fin selon les deux critères . . . . 32
20 Evolution des longueurs de saisons . . . . . . . . . . . . . . . . . . . . . . . 33
21 Variabilité des longueurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
22 Corrélation entre les différents paramètres . . . . . . . . . . . . . . . . . . . 37
2
1. Variabilité saisonnière et interannuelle des différents
paramètres climatiques
Library Utilisé
#Library utilisé
rm(list = ls())
require(xts) # série temporel
require(hydroTSM) #analyse hydrologique
require(ggplot2) # grammaire de graphiques
require(scales)#dates
require(lubridate)
require(reshape2)
require(dplyr)
require(trend)
Importation, traitement des données et différents résumés
setwd("C:/agro_analyse/devoir_de_groupe")
#lecture des données
data=read.table(paste(getwd(),"station_G5.txt",sep = "/"),
header=T,sep ="t",dec = ".", na.strings = "-9999")
#transformation en série temporelle
data.xts<- xts(data[,-1],seq.Date(as.Date("1961-01-01"),
as.Date("2009-12-31"),"day"))
#Résumés saisonniers et annuels
#moyenne
moyenne.mensuel=apply.monthly(data.xts[,-8],mean,na.rm=T)
moyenne.mens=moyenne.mensuel
insolation.mensuel=apply.monthly(data.xts$insolat..h.,sum,na.rm=T)
Pluie.mensuel=tapply(data$Pluie..mm.,
list(year(seq.Date(as.Date("1961-01-01"),
as.Date("2009-12-31"),"day")),
month(seq.Date(as.Date("1961-01-01"),
as.Date("2009-12-31"),"day"))),sum,na.rm=T)
#annuel
moyenne.annuel=apply.yearly(data.xts[,-8],mean,na.rm=T)
pluie.annuel=apply.yearly(data.xts$Pluie..mm.,sum,na.rm=T)
insolation.annuel=apply.yearly(data.xts$insolat..h.,sum,na.rm=T)
pluie.maxi.an=apply.yearly(data.xts$Pluie..mm.,max, na.rm=T)
vent.maxi.an=apply.yearly(data.xts$vent..m.s.,max, na.rm=T)
vent.maxi.an[vent.maxi.an==-Inf]<-NA
3
#manipulation des données pour les graphiques
moyenne.mensuel=as.data.frame(moyenne.mensuel)
colnames(moyenne.mensuel)=c("Tmin","Tmax","Umin","Umax","Insolation","Vent",
"Tmoy")
attach(moyenne.mensuel)
moyenne.mensuel$year=year(row.names(moyenne.mensuel))
moyenne.mensuel$month=month(row.names(moyenne.mensuel))
moyenne.mensuel=reshape2::melt(data=moyenne.mensuel,
measure.vars=names(moyenne.mensuel)[-c(8,9)],
id.vars=c("year","month"))
moyenne.mensuel$Date=as.Date(paste(moyenne.mensuel$year,
moyenne.mensuel$month,"01",sep = "-"))
moy.61.09.param=tapply(moyenne.mensuel$value,list(moyenne.mensuel$month,
moyenne.mensuel$variable),mean,na.rm=T
pluie.=apply(Pluie.mensuel,2,mean,na.rm=T)
moy.61.09.param=cbind(moy.61.09.param,pluie.)
monthOrder <- c('janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.',
'août', 'sept.', 'oct.', 'nov.', 'déc.')
moyenne.mensuel$Month <- factor(format(moyenne.mensuel$Date, "%b"),
levels = monthOrder)
Insolation.moyenne=moyenne.mensuel[moyenne.mensuel$variable=="Insolation",
c(6,4)]
Insolation.moy.cumul=cbind(Insolation.moyenne,
as.data.frame(insolation.mensuel))
colnames(Insolation.moy.cumul)=c("Month","Insolation Moyenne Mensuelle","Insolation cumu
Insolation.moy.cumul=reshape2::melt(data=Insolation.moy.cumul,
measure.vars=names(Insolation.moy.cumul)[c(2,3)], id.vars="Month")
vent=moyenne.mensuel[moyenne.mensuel$variable=="Vent",4]
#min(vent,na.rm = T)
#max(vent,na.rm = T)
detach(moyenne.mensuel)
1.1 Variabilité saisonnière
Moyenne sur la période 1961-2009
Il est présenté ci-dessous un tableau des moyennes mensuelles des paramètres températures,
humidités, insolation et vent calculées sur la période 1961-2009.
#Moyennes mensuelles sur 61-2009
x1=as.data.frame(cbind(Mois=month.abb[1:12],round(moy.61.09.param,2)))
#x1=round(x1,2)
4
kable(x1, "latex", booktabs = T)
Mois Tmin Tmax Umin Umax Insolation Vent Tmoy pluie.
Jan 16.67 32.46 12.15 38.18 9.24 2.01 24.56 0.16
Feb 19.2 35.67 10.05 34.58 9.45 2.08 27.44 0.18
Mar 23.01 38.55 10.52 34.94 8.82 2.1 30.78 1.8
Apr 26.36 40.42 14.81 45.45 8.68 2.16 33.39 7.91
May 27.28 39.98 23.35 64.46 9.09 2.55 33.63 31.16
Jun 25.32 36.94 34.81 78.55 8.78 2.77 31.13 87.66
Jul 23.47 33.7 47.52 89.94 8.41 2.34 28.59 162.21
Aug 22.74 32.15 55.14 94.73 7.97 1.82 27.45 200.5
Sep 22.92 33.66 48.87 92.83 8.43 1.62 28.29 110.33
Oct 23.31 37.2 27.06 77.27 9.2 1.42 30.26 28.53
Nov 19.93 36.42 14.3 51.32 9.64 1.45 28.17 0.83
Dec 17.29 33.35 13.45 42.62 9.25 1.76 25.32 0.25
1.1.1 Variabilité saisonnière Températures
ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable%in%
c("Tmin","Tmax","Tmoy"),],
mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+
ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) +
theme(axis.text.x = element_text(angle = 90,hjust = 1))+
theme(legend.position="bottom",legend.background = element_rect(fill="lightblue",
ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 2,ncol = 2) +
ggplot2::labs(title="Régime de températures--Période:1961-2009") +
ggplot2::xlab(label="Mois")+ggplot2::ylab(label= "Températures[°C]")+
labs(fill="Variables climatiques")
5
Tmoy
Tmin Tmax
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
32
36
40
15
20
25
24
28
32
36
Mois
Températures[°C]
Variables climatiques Tmin Tmax Tmoy
Régime de températures−−Période:1961−2009
Figure 1 – Régime de Températures
Cette figure (figure 1) représente l’évolution saisonnière de la température sur la période 1961
à 2009. L’analyse de cette figure permet de dire que la température minimale présente une
ondulation au cours de l’année avec des maximas en Avril-Mai (en moyenne 27.3°C pour le
mois de mai) et les mois de Janvier et Décembre sont les mois les plus frais (moyenne de 16°C
pour Janvier). Ces faibles valeurs de températures au cours des mois de décembre Janvier
seraient liées à l’envahissement des vents frais et secs d’harmattan venant du Sahara et qui
balayent toute la sous-région ouest africaine. Les températures minimales affichent une faible
dispersion aux mois de Juillet Août et Septembre qui correspondent à la période hivernale de
la zone.
Les températures maximales épousent elles aussi l’allure de celles minimales avec deux pics ;
le premier pic observé au cours des mois de Mars-Avril-Mai (mois les plus chauds) et le
deuxième enregistré au cours des mois d’Octobre et Novembre. Les mois de Juillet Août et
Septembre sont les mois les moins chauds avec des températures de l’ordre de 28-36°C. Les
hautes températures obtenues au cours des mois de Mars-Avril-Mai sont liées au fait que
cette période correspond au cour de la saison sèche. Les températures moyennes évoluent
entre 17 et 27°C pour les minimales et 32 et 40°C pour les maximales.
6
1.1.2 Variabilité saisonnière Humidités
ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable%in%c("Umin","Umax"),],
mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+
ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) +
theme(axis.text.x = element_text(angle = 90,hjust = 1))+
theme(legend.position="bottom",legend.background = element_rect(fill="lightblue",
ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 1,ncol = 2) +
ggplot2::labs(title="Régime Hygrométrique--Période:1961-2009") +
ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Humidité relative en [%]")+
labs(fill="Variables climatiques")
Umin Umax
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
20
40
60
80
100
20
40
60
Mois
Humiditérelativeen[%]
Variables climatiques Umin Umax
Régime Hygrométrique−−Période:1961−2009
Figure 2 – Régime Hygrométrique
la figure 2 représente l’évolution de l’humidité. L’humidité relative dans son évolution au cours
de la saison se présente sous la forme d’une cloche assymétrique vers la droite. L’humidité
minimale est inférieure à 20% au cours des mois de Novembre à Mars et est supérieure à 40%
entre juillet et Aout. L’humidité maximale (à droite sur la figure) a la même évolution que la
minimale avec des taux inférieurs à 50% en saison sèche et supérieur à 80% entre juillet et
7
Aout. Il faut remarquer que les deux types d’humidités se comportent de façon oppose au
niveau de la dispersion. En effet l’humidité minimale à une forte dispersion en saison humide
et une faible dispersion entre Novembre et Avril contrairement à l’humidité maximale qui
connait une faible dispersion entre Juillet et Septembre et forte dispersion le reste de l’année.
1.1.3 Variabilité saisonnière Insolation
ggplot2::ggplot(data=Insolation.moy.cumul,
mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+
ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) +
theme(axis.text.x = element_text(angle = 90,hjust = 1))+
theme(legend.position="bottom",legend.background = element_rect(fill="lightblue",
ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 1,ncol = 2) +
ggplot2::labs(title="Durée d'insolation--Période:1961-2009") +
ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Insolation en [heure]")+
labs(fill="Variables climatiques")
Insolation Moyenne Mensuelle Insolation cumul mensuel
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
0
100
200
300
7
8
9
10
11
Mois
Insolationen[heure]
Variables climatiques Insolation Moyenne Mensuelle Insolation cumul mensuel
Durée d'insolation−−Période:1961−2009
Figure 3 – Durée d’insolation mensuelle
8
L’insolation moyenne mensuelle connait une grande dispersion au cours de l’année contrai-
rement à son cumul mensuel au cours de la période 1961 à 2009 (figure 3). Les moyennes
mensuelles varient entre 7 et 10heures par mois et les cumuls sont généralement supérieurs à
225 heures par mois. Les plus petites valeurs se retrouvent au cours des mois de Juillet-Aout-
Septembre et cela s’explique par le fait que cette période correspond à la saison pluvieuse.
La saison pluvieuse est marquée par un ciel généralement nuageux empêchant ainsi les
rayonnements solaires de parvenir à la surface terrestre. Les fortes moyennes sont enregistrées
en saison sèche (figure 3).
1.1.4 Variabilité saisonnière Vent
ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable==c("Vent"),],
mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+
ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) +
theme(axis.text.x = element_text(angle = 90,hjust = 1))+
theme(legend.position="bottom",legend.background =
element_rect(fill="lightblue",
size=0.5, linetype="solid"), legend.title =
element_text(colour="blue", size=10,face="bold"))+
ggplot2::labs(title="Vitesse du vent--Période:1961-2009") +
ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Vitesse du vent en [m/s]")+
labs(fill="Variables climatiques")
1
2
3
4
janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.
Mois
Vitesseduventen[m/s]
Variables climatiques Vent
Vitesse du vent−−Période:1961−2009
Figure 4 – Vent saisonnier
9
La vitesse du vent représentée sur la figure 4 est globalement supérieure à 0,5m/s et inférieure
à 3,5m/s. Les mois de Mai et Juin enregistrent les fortes vitesses du vent comprises entre
1,5 et 4m/s mais le vent affiche aussi une forte dispersion pendant cette même période. Cela
pourra être lié au début de la saison pluvieuse avec la prédominance des grains orageux.
hist(vent, breaks=seq(0,5,1), main="Fréquences des vitesses de vent",
xlab="Vitesse de vent (moyenne mensuelle)[en m/s]", ylab="Occurence",col="cyan")
Fréquences des vitesses de vent
Vitesse de vent (moyenne mensuelle)[en m/s]
Occurence
0 1 2 3 4 5
0100200
Figure 5 – Occurence des vitesses de vent
Les fortes occurrences de vitesse de vent mensuelle sont comprises entre 1 à 3m/s. Les vents
forts de 4 à 5m/s par mois sont moins fréquents dans la zone.
1.1.5 Variabilité saisonnière Pluie
boxplot(Pluie.mensuel,names = month.abb[1:12],col="cyan",
main="Régime pluviométrique",
ylab="Pluie(mm/mois)",xlab="Mois",las=2)
lines(1:12,apply(Pluie.mensuel,2,mean),col="red",lwd=2)
legend(x="topleft",legend=c("moyenne mensuelle"),
cex = 0.6,lwd = 2, col = "red",lty = 1)
10
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
0
100
200
300
400
Régime pluviométrique
Mois
Pluie(mm/mois)
moyenne mensuelle
Figure 6 – Régime pluviométrique
Le régime pluviométrique est monomodal. La pluviométrie moyenne mensuelle présente une
forte variabilité au cours de l’année. La période de Juin à septembre sont les mois les plus
arrosés avec des quantités en moyenne supérieures à 100mm. Le mois d’Août est le mois au
cours duquel la zone enregistre de forte pluviométrie avec des hauteurs moyennes atteignant
200mm. Le cumul mensuel présente toutefois une forte dispersion au cours de ce mois. A
partir de cette représentation graphique on peut dire que la saison de pluie dans la zone va
de juin à septembre avec plus de 80% du cumul annuel.
par(mfrow=c(1,2))
hist(data$Pluie..mm., breaks=seq(0,120,5),
main="Fréquences des pluies n journalières",
xlab="classes des hauteurs n journalières[en mm/jour]",
ylab="Occurence",col="cyan")
hist(apply.monthly(data.xts[,8]$Pluie..mm.,sum), breaks=seq(0,450,50),
main="Fréquences des pluies n mensuelles",
xlab="classes des hauteurs n mensuelles[en mm/mois]",
ylab="Occurence",col="cyan")
11
Fréquences des pluies
journalières
classes des hauteurs
journalières[en mm/jour]
Occurence
0 20 60 100
050001000015000
Fréquences des pluies
mensuelles
classes des hauteurs
mensuelles[en mm/mois]
Occurence
0 100 300
0100200300400
Figure 7 – Fréquence des Pluies journalières et mensuelles
Les hauteurs des précipitations journalières présentent des fréquences très variables sur la
période d’étude (1961-2009). Les hauteurs journalières inférieures 5mm sont très fréquemment
observées dans la zone. Les précipitations supérieures à 60mm bien qu’elles soient très rares
ont été observéees sur la période d’étude dans la zone.
Les pluviométries mensuelles inférieures à 50mm présentent une plus forte occurrence .
climograph(apply.monthly(data.xts[,8]$Pluie..mm.,sum),
moyenne.mens$tmean...C.,na.rm = T,
main="Evolution de la Pluviométrie et de la Température Moyennes 1961-2009")
12
Jan Mar May Jul Sep Nov
Evolution de la Pluviométrie et de la Température Moyennes 1961−2009Precipitation,[mm]
0
50
100
150
200
250
0.2 0.2 1.8 7.9
31.2
87.7
160.8
200.5
110.3
28.5
0.8 0.2
24.6
27.4
30.8
33.4 33.6
31.1
28.6
27.4
28.3
30.3
28.2
25.3
24
26
28
30
32
34
Temperature,[°C]
Precipitation Temperature
Figure 8 – Evolution de la Pluviométrie et de la Température Moyennes 1961-2009
Cette figure n’est qu’une synthèse de l’évolution saisonnière des paramètres pluie et tempéra-
tures sur la zone. les températures moyennes (en rouge) et la pluviométrie (en batons bleu)
moyennes mensuelles sur la période y sot représentées.
1.2 Variabilité interannuelle des paramètres climatiques
##études de ruptures dans les séries de températures et de précipitations
TminK=mk.test(ts(moyenne.annuel$tmin...C.,start = 1961,end = 2009,frequency = 1))
Tminpt=pettitt.test(ts(moyenne.annuel$tmin...C.,start = 1961,end = 2009,frequency = 1))
TmaxK=mk.test(ts(moyenne.annuel$tmax...C.,start = 1961,end = 2009,frequency = 1))
Tmaxpt=pettitt.test(ts(moyenne.annuel$tmax...C.,start = 1961,end = 2009,frequency = 1))
RRK=mk.test(ts(pluie.annuel,start = 1961,end = 2009,frequency = 1))
RRpt=pettitt.test(ts(pluie.annuel,start = 1961,end = 2009,frequency = 1))
RR_maxK=mk.test(ts(pluie.maxi.an ,start = 1961,end = 2009,frequency = 1))
RR_maxpt=pettitt.test(ts(pluie.maxi.an ,start = 1961,end = 2009,frequency = 1))
##regression
Tminreg=lm(moyenne.annuel$tmin...C.~year(moyenne.annuel$tmin...C.))
Tmaxreg=lm(moyenne.annuel$tmax...C.~year(moyenne.annuel$tmax...C.))
13
RRreg=lm(pluie.annuel$Pluie..mm.~year(pluie.annuel$Pluie..mm.))
RR_maxreg=lm(pluie.maxi.an$Pluie..mm.~year(pluie.maxi.an$Pluie..mm.))
#IPS
TminIPS=scale(moyenne.annuel$tmin...C.,
mean(moyenne.annuel$tmin...C.[1:30],
sd(moyenne.annuel$tmin...C.[1:30])))
TmaxIPS=scale(moyenne.annuel$tmax...C.,
mean(moyenne.annuel$tmax...C.[1:30],
sd(moyenne.annuel$tmax...C.[1:30])))
TmeanIPS=scale(moyenne.annuel$tmean...C.,
mean(moyenne.annuel$tmean...C.[1:30],
sd(moyenne.annuel$tmean...C.[1:30])))
RRIPS=scale(pluie.annuel$Pluie..mm.,
mean(pluie.annuel$Pluie..mm.[1:30],
sd(pluie.annuel$Pluie..mm.[1:30])))
##moving average
moymobTmin=stats::filter(TminIPS$tmin...C.,rep(1/5,5), side=2)
moymobTmax=stats::filter(TmaxIPS$tmax...C.,rep(1/5,5), side=2)
moymobTmean=stats::filter(TmeanIPS$tmean...C.,rep(1/5,5), side=2)
moymobRRIPS=stats::filter(RRIPS$Pluie..mm.,rep(1/5,5), side=2)
1.2.1 Variabilité interannuelle des températures
###graphes températures
par(mfrow=c(1,2))
plot(year(moyenne.annuel$tmin...C.),moyenne.annuel$tmin...C.,type = "l",lwd=3,
col="red",
main="Evolution des n températures minimales",
xlab = "Années",ylab = "°C", las=2)
abline(Tminreg$coefficients,lwd=2)
mtext(paste("tau=",signif(TminK$estimates[3],2)," p-value=",
signif(TminK$p.value,2),sep = ""),3)
mtext(paste("Année=",year(moyenne.annuel[Tminpt$estimate]),
" p-value=",signif(Tminpt$p.value,2),sep = ""),4)
segments(1961,mean(moyenne.annuel$tmin...C.[1:22],na.rm=T),1982,
mean(moyenne.annuel$tmin...C.[1:22],na.rm=T),col="blue",lwd = 3)
segments(1982,mean(moyenne.annuel$tmin...C.[22:49],na.rm=T),2009,
mean(moyenne.annuel$tmin...C.[22:49],na.rm=T), col="cyan",lwd = 3)
14
legend(x="bottomright",legend=c("moyenne annuelle","moyenne Période 1",
"moyenne période 2","Tendance"),cex = 0.55,lwd = 2,
col = c("red","blue","cyan","black"),lty = c(1,1,1,1))
plot(year(moyenne.annuel$tmax...C.),moyenne.annuel$tmax...C.,type = "l",lwd=3,
col="red",main="Evolution des n températures maximales",
xlab = "Années",ylab = "°C", las=2)
abline(Tmaxreg$coefficients,lwd=2)
mtext(paste("tau=",signif(TmaxK$estimates[3],2)," p-value=",
signif(TmaxK$p.value,2),sep = ""),3)
mtext(paste("Année=",year(moyenne.annuel[Tmaxpt$estimate])," p-value=",
signif(Tmaxpt$p.value,2),sep = ""),4)
segments(1961,mean(moyenne.annuel$tmax...C.[1:8],na.rm=T),1968,
mean(moyenne.annuel$tmax...C.[1:8],na.rm=T), col="blue",lwd = 3)
segments(1968,mean(moyenne.annuel$tmax...C.[8:49],na.rm=T),2009,
mean(moyenne.annuel$tmax...C.[8:49],na.rm=T), col="cyan",lwd = 3)
legend(x="bottomright",legend=c("moyenne annuelle","moyenne Période 1",
"moyenne période 2","Tendance"),cex = 0.5,lwd = 2,
col = c("red","blue","cyan","black"),lty = c(1,1,1,1))
15
1960
1970
1980
1990
2000
2010
20.5
21.0
21.5
22.0
22.5
23.0
23.5
Evolution des
températures minimales
Années
°C
tau=0.69 p−value=3.5e−12
Année=1982p−value=6.3e−08
moyenne annuelle
moyenne Période 1
moyenne période 2
Tendance
1960
1970
1980
1990
2000
2010
35.0
35.5
36.0
36.5
Evolution des
températures maximales
Années
°C
tau=0.063 p−value=0.53
Année=1968p−value=0.52
moyenne annuelle
moyenne Période 1
moyenne période 2
Tendance
Figure 9 – Evolution des températures
La figure ci-dessus présente la variation interannuelle des températures minimales et maximales.
On note une tendance à la hausse aussi bien pour les Températures minimales que maximales.
Cependant la hausse est plus importante et significative (le test de Mann- Kendall utilisé avec
un niveau de significativité au seuil de 5%) pour les températures minimales (0.5°C /10ans)
que les températures maximales (0.03°C/10ans). L’utilisation du test de Pettit avec un niveau
de significativité au seuil de 5% a permis de détecter les années de ruptures. L’année de
rupture trouvée pour les Tmin est 1982 avec un pvalue <0.05. La différence de moyenne
entre les deux périodes (avant 1982 et après 1982) est de l’ordre 1.5°C. Pour la température
maximale, il n’y a pas de rupture significative. hausse de température devient continue et
plus importante sur les températures minimales que sur les températures maximales
#variabilité des températures
par(mfrow=c(1,2))
plot(year(TminIPS),TminIPS,col=ifelse(TminIPS>0,"red","blue"),type = "h"
,ylab = "anomalies de températures",xlab = "Année", las=2,
main= "variation de la température n minimale",lwd=2)
lines(year(TminIPS),moymobTmin,lwd=2,col="black")
16
legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"),
cex = 0.6,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1))
plot(year(TmaxIPS),TmaxIPS,col=ifelse(TmaxIPS>0,"red","blue"),type = "h"
,ylab = "anomalies de températures",xlab = "Année", las=2,
main= "variation de la température n maximale",lwd=2)
lines(year(TmaxIPS),moymobTmax,lwd=2,col="black")
legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"),
cex = 0.6,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1))
lines(year(TmaxIPS),moymobTmax,lwd=2,col="black")
1960
1970
1980
1990
2000
2010
−1.0
−0.5
0.0
0.5
1.0
1.5
2.0
variation de la température
minimale
Année
anomaliesdetempératures
Année Chaude
Année froide
moy−mob
1960
1970
1980
1990
2000
2010
−2
−1
0
1
variation de la température
maximale
Année
anomaliesdetempératures
Année Chaude
Année froide
moy−mob
Figure 10 – Variabilité interannuelle des températures
par(mfrow=c(1,1))
y=plot(year(TmeanIPS),TmeanIPS,col=ifelse(TmeanIPS>0,"red","blue"),
type = "h",lwd=2,ylab = "anomalies de températures",xlab = "Année", las=2,
main= "Variabilité de la température moyenne")
lines(year(TmeanIPS),moymobTmean,lwd=2,col="black")
legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"),
17
cex = 0.8,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1))
1960
1970
1980
1990
2000
2010
−2
−1
0
1
2
Variabilité de la température moyenne
Année
anomaliesdetempératures
Année Chaude
Année froide
moy−mob
Figure 11 – Variabilité interannuelle des températures
De l’observation de ces figures sur la variabilité des températures, il ressort :
— Pour la température minimale
Une tendance d’années relativement froides (1961-1980) en comparaison à la moyenne
61-90 et une tendance maintenue d’année chaudes de 1981-2009. Les 10 années les
plus chaudes s’observent pour la plupart ces 20 dernières années.
— Pour la température maximale
on note une certaine variabilité des températures maximales avec une tendance à des
années chaudes ces dernières années
— Pour les températures moyennes
une situation similaire à la température minimale est observée.
18
1.2.2 Variabilité des précipitations annuelles
#Graphe des pluies
par(mfrow=c(1,2))
plot(year(pluie.annuel$Pluie..mm.),pluie.annuel$Pluie..mm.,type = "l",lwd=3, col="red",
main="Evolution des n cumuls annuels",
xlab = "Années",ylab = "Pluie en [mm/an]", las=2)
abline(RRreg$coefficients,lwd=2)
mtext(paste("tau=",signif(RRK$estimates[3],2)," p-value=",
signif(RRK$p.value,2),sep = ""),3)
mtext(paste("Année=",year(pluie.annuel[RRpt$estimate])," p-value=",
signif(RRpt$p.value,2),sep = ""),4)
segments(1961,mean(pluie.annuel$Pluie..mm.[1:30],na.rm=T),1990,
mean(pluie.annuel$Pluie..mm.[1:30],na.rm=T), col="blue",lwd = 3)
segments(1990,mean(pluie.annuel$Pluie..mm.[30:49],na.rm=T),2009,
mean(pluie.annuel$Pluie..mm.[30:49],na.rm=T), col="cyan",lwd = 3)
legend(x="topleft",legend=c("cumul annuel","cumul moyen Période 1",
"cumul moyen période 2","Tendance"),cex = 0.5,lwd = 2,
col = c("red","blue","cyan","black"),lty = c(1,1,1,1))
plot(year(pluie.maxi.an$Pluie..mm.),pluie.maxi.an$Pluie..mm.,type = "l",
lwd=3, col="red",main="Evolution des pluies n maxi annuels",
xlab = "Années",ylab = "Pluie en [mm/an]", las=2)
abline(RR_maxreg$coefficients,lwd=2)
mtext(paste("tau=",signif(RR_maxK$estimates[3],2)," p-value=",
signif(RR_maxK$p.value,2),sep = ""),3)
mtext(paste("Année=",year(pluie.annuel[RR_maxpt$estimate])," p-value=",
signif(RR_maxpt$p.value,2),sep = ""),4)
segments(1961,mean(pluie.maxi.an$Pluie..mm.[1:27],na.rm=T),1987,
mean(pluie.maxi.an$Pluie..mm.[1:27],na.rm=T), col="blue",lwd = 3)
segments(1987,mean(pluie.maxi.an$Pluie..mm.[27:49],na.rm=T),2009,
mean(pluie.maxi.an$Pluie..mm.[27:49],na.rm=T), col="cyan",lwd = 3)
legend(x="topright",legend=c("maxi annuel","moyen maxi Période 1",
"moyen maxi période 2","Tendance"),cex = 0.5,lwd = 2,
col = c("red","blue","cyan","black"),lty = c(1,1,1,1))
19
1960
1970
1980
1990
2000
2010
400
500
600
700
800
900
Evolution des
cumuls annuels
Années
Pluieen[mm/an]
tau=0.043 p−value=0.67
Année=1990p−value=0.28
cumul annuel
cumul moyen Période 1
cumul moyen période 2
Tendance
1960
1970
1980
1990
2000
2010
40
60
80
100
Evolution des pluies
maxi annuels
Années
Pluieen[mm/an]
tau=0.035 p−value=0.73
Année=1987p−value=0.45
maxi annuel
moyen maxi Période 1
moyen maxi période 2
Tendance
Figure 12 – Evolution des précipitations annuelles
Il est présenté ci-dessus l’évolution des cumuls annuels et des pluies maxi annuels. on note un
forte variation du cumul (400- plus de 900mm). On constate un tendance à la hausse qui
cependant au test de Man-Kendall n’est pas significative. Aussi le test de pettit appliqué révèle
l’année 1990 comme rupture avec pvalue>0.05 donc non significatif. Néanmoins nous avons
essayé de calculer la différence de moyenne entre les deux périodes qui est de 50mm environ.
Dans 50% de cas les pluies maxi annuels sont supérieurs à 60mm. elles sont supérieures à
80mm 9années/49.
#variabilité des précipitations
par(mfrow=c(1,1))
y=plot(year(RRIPS),RRIPS,col=ifelse(RRIPS<0,"red","blue"),type = "h"
,ylab = "IPS",xlab = "Année", las=2,main= "variabilité des cumuls annuels",lwd=3)
lines(year(RRIPS),moymobRRIPS,lwd=2,col="black")
legend(x="topleft",legend=c("Année excédentaire","Année déficitaire","moy-mob"),
cex = 0.8,lwd = 2, col = c("blue","red","black"),lty = c(1,1,1))
20
1960
1970
1980
1990
2000
2010
−1
0
1
2
variabilité des cumuls annuels
Année
IPS
Année excédentaire
Année déficitaire
moy−mob
Figure 13 – Variabilité des précipitations annuelles
De l’observation de cette figure sur la variabilité des cumuls pluviométriques, il ressort une
tendance d’années déficitaires entre 1970 et 1990 et deux periodes d’années excédentaires :
1960-1969 et 1991-2009. Les années de deficit remarquables sont 1983,1984.
1.2.3 Variabilité des vitesses de vent
##Graphe des vents
par(mfrow=c(1,2))
plot(year(moyenne.annuel$vent..m.s.),moyenne.annuel$vent..m.s.,type = "l",
lwd=3, col="red",main="Evolution des vitesses n de vent",
xlab = "Années",ylab = "vitesse du vent en[m/s]", las=2)
plot(year(vent.maxi.an$vent..m.s.),vent.maxi.an$vent..m.s.,type = "l",
lwd=3, col="red",main="Evolution des n vents maxi annuels",
xlab = "Années",ylab = "vitesse du vent en[m/s]", las=2)
21
1960
1970
1980
1990
2000
20101.5
2.0
2.5
Evolution des vitesses
de vent
Années
vitesseduventen[m/s]
1960
1970
1980
1990
2000
2010
3.5
4.0
4.5
5.0
5.5
6.0
6.5
7.0
Evolution des
vents maxi annuels
Années
vitesseduventen[m/s]
Figure 14 – Vent : vitesse interannuelle
Les moyennes annuelles de vitesses de vent sont comprises entre 1 et 3 m/s. Elles présentent
une tendance à la hausse. Les maxi journaliers de vitesse de vent dépassent dans plus de 60%
des observations les 05m/s.
1.2.4 Variabilité des paramètres Humidité et insolation
#graphes humidités et insolation
par(mfrow=c(1,2))
plot(year(moyenne.annuel$rhmax....),moyenne.annuel$rhmax....,type = "l",lwd=3,
col="red",main="Evolution de l'humidité n relative",xlab = "Années",
ylab = "Humidité relative en[%]", las=2, ylim = c(10,70))
lines(year(moyenne.annuel$rhmin....), moyenne.annuel$rhmin....,col="blue",lwd=3)
legend(x="bottomright",legend=c("Humidité maxi","Humidité mini"),
cex = 0.6,lwd = 2, col = c("red","blue"),lty = c(1,1))
plot(year(moyenne.annuel$insolat..h.),moyenne.annuel$insolat..h.,type = "l",lwd=3,
22
col="red",main="Evolution des durées n d'insolation",xlab = "Années",
ylab = "Insolation en [heures]", las=2)
1960
1970
1980
1990
2000
2010
10
20
30
40
50
60
70
Evolution de l'humidité
relative
Années
Humiditérelativeen[%]
Humidité maxi
Humidité mini 1960
1970
1980
1990
2000
2010
8.4
8.6
8.8
9.0
9.2
9.4
9.6
Evolution des durées
d'insolation
Années
Insolationen[heures]
Figure 15 – Evolution interannuelle de l’insolation et de l’humidité
L’insolation présente une tendance à la baisse et varie entre 8.4 et 10 h en moyenne par année.
L’humidité présente des faibles valeurs sur la période 1983-1990 correspondant aux années de
déficit pluviométriques accentués.
2. Date de début et Date de fin de saison, nombre de
jour de pluie
2.1 Date de début de saison
Le critère “agronomique” fut présenté par Somé and Sivakumar (1994). Somé and Sivakumar
(1994) retiennent comme condition du démarrage de la saison (date X), une quantité de 20
23
mm de pluies recueillies en 3 jours consécutifs après le 01 avril de l’année, sans période sèche
d’une durée supérieure à 7 jours dans les 30 jours qui suivent.
#&&&&&&&&&&&&&&&&&&&&&&&&&&&& dates de debut de saison &&&&&&&&&&&&&&&&&&&&&
#&&&&&&&&&&&&&&&&&&&&&&&
dates=as.character(data[,1])
julien.day=NULL
mat=NULL # initialisation pour les nombres de jours annuels
mat2=NULL # initialisation pour les dates de début
date.dem.deb="01-04" #date de démarrage de la recherche des dates de début
for (an in 1961:2009){
annee=as.character(an)
debut=paste(date.dem.deb,substr(annee, 3, 4), sep = "-")
fin=paste("31-12-",substr(annee, 3, 4),sep = "")
idebut=as.numeric(which(dates==debut))
ifin=as.numeric(which(dates==fin))
pluiesannee=as.numeric(data$Pluie..mm.[idebut:ifin])
nbpluie20mm=length(which(pluiesannee>=20))
nbjp=length(which(pluiesannee>=1))# nombre de jour
#de pluie par an
trouv=0
idate=idebut
repeat {
idate=idate+1
ipreced=idate-1
isuiv=idate+1
#controle de données manquantes
if (is.na(data[ipreced,9])==T|is.na(data[idate,9])==T|is.na(data[isuiv,9])==T){
deb_saison<-NA_real_
break()
}
cumul3jr=data[ipreced,9]+data[idate,9]+data[isuiv,9] #3jrs
if (cumul3jr>=20) {
troisp=c(data[ipreced,9],data[idate,9],data[isuiv,9])
itroisp=c(ipreced,idate,isuiv)
maxp=max(troisp,na.rm=T)
imaxp=which(troisp==maxp)
ideb=itroisp[imaxp]
deb_saison=data[ideb,1]
trouv=1
#controle des séquences sèches de plus de 7jours
24
finp=ideb+30
pluie30jr=data[ideb:finp,1]
isec=0
repeat {
isec=isec+1
isecf=isec+6
donneeverif=pluie30jr[isec:isecf]
test1=length(which(donneeverif<1))
if (test1==7){
trouv=0
}
if (test1==7 | isec==24 ) break
}
}
if (trouv==1) break
}
result=c(an,nbpluie20mm,nbjp)
mat=rbind(mat,as.numeric(result))
demarrage=c(as.character(an),as.character(deb_saison))
mat2=rbind(mat2,as.character(demarrage))
}
colnames(mat)=c("Année","Nombre pluies>=20mm","Nombre jours pluies sur l'année")
colnames(mat2)=c("Annee","Debut_saison")
mat2=as.data.frame(mat2)
for(i in 1:dim(mat2)[1]){
if(is.na(mat2$Debut_saison[i])){julien.day<-rbind(julien.day,NA)
next }
julien.day=rbind(julien.day,julian(as.Date(paste(mat2$Annee[i],
substr(mat2$Debut_saison[i],4,5),substr(mat2$Debut_saison[i],1,2),sep="-")),
origin=as.Date(paste(mat2$Annee[i],"01-01",sep="-"))))
}
mat2=cbind(mat2,julien.day)
colnames(mat2)=c("Annee","Debut_saison","jour_julien")
par(mfrow=c(1,2))
plot(year(moyenne.annuel$insolat..h.),mat2$jour_julien,type = "l",lwd=3, col="blue",
main="Evolution des dates n de début de saison",
xlab = "Années",ylab = "Dates en [jour julien]", las=2)
abline(h=mean(mat2$jour_julien,na.rm = T),col="red",lwd=2)
legend(x="bottomleft",legend=c("Date de début",
"Moyenne 1961-2010"),
cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1))
25
boxplot(mat2$jour_julien,names =c("DD"),col="cyan",
main="Date de début n de saison",
ylab="Dates en [jour/julien)",las=2)
1960
1970
1980
1990
2000
2010
120
140
160
180
Evolution des dates
de début de saison
Années
Datesen[jourjulien]
Date de début
Moyenne 1961−2010
120
140
160
180
Date de début
de saison
Datesen[jour/julien)
Figure 16 – Date de début de saison
Les dates de début présentent une très forte variation et se situent entre le 25 Avril au plutôt
au 06 juillet au plus tard. En moyenne la saison démarre autour du 04 juin. Les dates sont
assez dispersées et présentent une distribution symétrique (moyenne sensiblement égale à la
médiane). Dans 75% des cas les dates de début sont inférieures au 20 juin. Le paysan court
moins de risque de ré-semis en semant après cette date car 3 années sur 4 nous avons son
occurence. Aussi tout paysan qui sème avant le 20 mai court un grand risque de ré-semis car
seulement 25% des dates lui sont inférieures soit une occurence de 1 année sur 4.
DD=scale(mat2$jour_julien,
mean(mat2$jour_julien[1:30],na.rm = T),
sd(mat2$jour_julien[1:30],na.rm = T))
par(mfrow=c(1,1))
plot(year(RRIPS),DD,col=ifelse(DD>0,"red","blue"),type = "h"
,ylab = "anomalies des dates de début",xlab = "Année", las=2,main= "variabilité des Date
26
lines(year(RRIPS),stats::filter(DD,rep(1/5,5), side=2)
,lwd=2,col="black")
legend(x="bottomleft",legend=c("Précoce","Tardive","moy-mob"),
cex = 0.8,lwd = 2, col = c("blue","red","black"),lty = c(1,1,1))
1960
1970
1980
1990
2000
2010
−2.0
−1.5
−1.0
−0.5
0.0
0.5
1.0
variabilité des Dates de début de saison
Année
anomaliesdesdatesdedébut
Précoce
Tardive
moy−mob
Figure 17 – Variabilité des dates de début
De 1961 à 1970, les dates de début présentent une tardivité soutenue. Le reste des années est
marquée par une forte variabilité.
2.2 Date de fin de saison
critère SIVAKUMAR
La date de la fin de la saison des pluies est le jour où, après le 01 septembre, il n’y a plus
de pluie supérieure ou égale à 5 mm pendant au mois 20 jours successifs ou deux décades
(Sivakumar).
27
#################Date de fin critère Sivakumar
dates=as.character(data[,1])
julien.day=NULL
mat3=NULL
date.dem.fin="01-09" #date de démarrage de la recherche des dates de fin
#ou avec readline
#date.dem=readline("saisissez la date de démarrage des calculs sous la forme 01-10 et t
for (an in 1961:2009){
annee=as.character(an)
jour.dem.cal=paste(date.dem.fin,substr(annee, 3, 4), sep = "-")
fin=paste("31-12-",substr(annee, 3, 4),sep = "")
ijour.dem.cal=as.numeric(which(dates==jour.dem.cal))
ifin=as.numeric(which(dates==fin))
#Recherche dela date de fin de saison
ifin.saison=ijour.dem.cal
repeat {
if(any(data$Pluie..mm.[ifin.saison:(ifin.saison+19)]>=5)){
max.indice.sup.5=as.numeric(max(
which(data$Pluie..mm.[ifin.saison:(ifin.saison+19)]>=5)))
ifin.saison=ifin.saison+max.indice.sup.5
}else{
break
}
}
fin.saison<-data[ifin.saison,1]
findesaison=c(as.character(an),as.character(fin.saison))
mat3=rbind(mat3,as.character(findesaison))
}
colnames(mat3)=c("Annee","Fin_saison")
mat3=as.data.frame(mat3)
####COnversion en Jour julien###############################
for(i in 1:dim(mat3)[1]){
if(is.na(mat3$Fin_saison[i])){julien.day<-rbind(julien.day,NA)
next }
julien.day=rbind(julien.day,julian(as.Date(paste(mat3$Annee[i],
substr(mat3$Fin_saison[i],4,5),substr(mat3$Fin_saison[i],1,2),sep="-")),
origin=as.Date(paste(mat3$Annee[i],"01-01",sep="-"))))
}
mat3=cbind(mat3,julien.day)
colnames(mat3)=c("Annee","Fin_saison","jour_julien")
28
critères PRESAO (CRA)
La fin de la saison dans la zone nord unimodale a lieu quand à partir du 1ˆ{er} Septembre,
un sol capable de contenir 70mm d’eau disponible est complètement puisé par une perte
quotidienne d’évapotranspiration de 5mm.
##############Date de fin critère PRESAO
dates=as.character(data[,1])
julien.day=NULL
mat4=NULL
date.dem.fin="01-09" #date de démarrage de la recherche des dates de fin
#ou avec readline
#date.dem=readline("saisissez la date de démarrage des calculs sous la forme 01-10 et t
#Capacité de Rétention du sol en mm
Cap_ret_maxi=70
#Evapotranspiration quotidienne en mm/j
ETP=5
for (an in 1961:2009){
annee=as.character(an)
debut=paste("01-01",substr(annee, 3, 4), sep = "-")
jour.dem.cal=paste(date.dem.fin,substr(annee, 3, 4), sep = "-")
fin=paste("31-12-",substr(annee, 3, 4),sep = "")
idebut=as.numeric(which(dates==debut))
ijour.dem.cal=as.numeric(which(dates==jour.dem.cal))
ifin=as.numeric(which(dates==fin))
ru=0 # initilisation de la capacité de rétention du sol
#au début de l'année en saison séche
#détermination de la capacité de rétention du sol
#é la date de démarrage de la recherche de fin
for(k in idebut:ijour.dem.cal){
if(is.na(data$Pluie..mm.[k])){
next()
}
ru<-data$Pluie..mm.[k]+ru-ETP
if(ru>Cap_ret_maxi){
ru<-Cap_ret_maxi
}
if(ru<0){
ru<-0
}
29
}
#fin de la détermination de ru au Jour de demarrage calcul
#Recherche dela date de fin de saison
ifin.saison=ijour.dem.cal
repeat {
ifin.saison<-ifin.saison+1
ru<-data$Pluie..mm.[ifin.saison]+ru-ETP
if(ru>Cap_ret_maxi){
ru<-Cap_ret_maxi
}
if (ru<=0.5) break()
}
fin.saison<-data[ifin.saison,1]
findesaison=c(as.character(an),as.character(fin.saison))
mat4=rbind(mat4,as.character(findesaison))
}
colnames(mat4)=c("Annee","Fin_saison")
mat4=as.data.frame(mat4)
####COnversion en Jour julien###############################
for(i in 1:dim(mat3)[1]){
if(is.na(mat4$Fin_saison[i])){julien.day<-rbind(julien.day,NA)
next }
julien.day=rbind(julien.day,julian(as.Date(paste(mat4$Annee[i],
substr(mat4$Fin_saison[i],4,5),substr(mat4$Fin_saison[i],1,2),
sep="-")),
origin=as.Date(paste(mat4$Annee[i],"01-01",sep="-"))))
}
mat4=cbind(mat4,julien.day)
colnames(mat4)=c("Annee","Fin_saison","jour_julien")
par(mfrow=c(1,1))
plot(year(moyenne.annuel$insolat..h.),mat4$jour_julien,type = "l",lwd=3,
col="blue",main="Evolution des dates de fin de saison",
xlab = "Années",ylab = "Dates en [jour julien]", las=2)
points(year(moyenne.annuel$insolat..h.),mat4$jour_julien,pch=16,col="blue")
#abline(h=mean(mat3$jour_julien,na.rm = T),col="red",lwd=2)
lines(year(moyenne.annuel$rhmin....), mat3$jour_julien,col="red",lwd=3)
points(year(moyenne.annuel$insolat..h.),mat3$jour_julien,pch=16,col="red")
legend(x="topleft",legend=c("PRESAO","SIVAKUMAR"),
cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1))
30
1960
1970
1980
1990
2000
2010
250
260
270
280
290
300
Evolution des dates de fin de saison
Années
Datesen[jourjulien]
PRESAO
SIVAKUMAR
Figure 18 – Evolution des dates de fin de saison
Les dates de début varient entre le 02 septembre et 02 novembre pour les deux critères utilisés
et tournent en moyenne autour du 04 octobre pour le critère de sivakumar et du 23 septembre
pour le critère du CRA (PRESAO). Sur presque toute la période d’étude les dates critères
sivakumar sont au delà des dates critères PRESAO. Sur presque toutes les années, les dates
de début
boxplot(cbind(mat3$jour_julien,mat4$jour_julien),names =c("SIVAKUM","PRESAO"),col=c("red
31
SIVAKUM
PRESAO
250
260
270
280
290
300
Date de fin de saison
Datesen[jour/julien)
Figure 19 – comparaison de la distribution des dates de fin selon les deux critères
Les dates de fin calculées avec le critère SIVAKUMAR, dans 50% des cas dépassent 75% des
dates dates de fin critère PRESAO. 1 année sur 2, les dates pour sivakumar sont inférieures
au 03 octobre et celles du PRESAO sont inférieures 23 septembre.
2.3 Longueur de saison
Long.sivakumar=mat3$jour_julien-mat2$jour_julien
Long.presao=mat4$jour_julien-mat2$jour_julien
plot(year(moyenne.annuel$insolat..h.),Long.presao,type = "l",lwd=3, col="blue",
main="Evolution des longueurs de saison",
xlab = "Années",ylab = "Longeur de saison en [nombre de jour ]", las=2)
#abline(h=mean(mat3$jour_julien,na.rm = T),col="red",lwd=2)
lines(year(moyenne.annuel$rhmin....), Long.sivakumar,col="red",lwd=3)
legend(x="topleft",legend=c("PRESAO",
"SIVAKUMAR"),
cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1))
32
1960
1970
1980
1990
2000
2010
60
80
100
120
140
160
Evolution des longueurs de saison
Années
Longeurdesaisonen[nombredejour]
PRESAO
SIVAKUMAR
Figure 20 – Evolution des longueurs de saisons
Le choix de la culture plus précisément son cycle doit tenir compte des longueurs des saisons
et des chances que la longueur du cycle corresponde à la longueur des saisons. Ici nous
présentons l’évolution des longeurs de saison pour les deux critères utilisés. Elles varient entre
60 et 165 jours pour les deux critères sur la période d’étude. A l’instar de la date de début
elle est très variable.
LSS=scale(Long.sivakumar,
mean(Long.sivakumar[1:30],na.rm = T),
sd(Long.sivakumar[1:30],na.rm = T))
LSP=scale(Long.presao,
mean(Long.presao[1:30],na.rm = T),
sd(Long.presao[1:30],na.rm = T))
par(mfrow=c(1,2))
y=plot(year(RRIPS),LSS,col=ifelse(LSS>0,"blue","red"),type = "h"
,ylab = "anomalies des longueurs de saison",xlab = "Année", las=2,
main= "variabilité des longueurs n de saison SIVAKUMAR",lwd=3)
legend(x="bottomleft",legend=c("longue","courte"),
cex = 0.8,lwd = 2, col = c("blue","red"),lty = c(1,1))
33
y=plot(year(RRIPS),LSP,col=ifelse(LSP>0,"blue","red"),type = "h"
,ylab = "anomalies des longueurs de saison",xlab = "Année", las=2,
main= "variabilité des longueurs n de saison PRESAO",lwd=3)
legend(x="bottomleft",legend=c("longue","courte"),
cex = 0.8,lwd = 2, col = c("blue","red"),lty = c(1,1))
1960
1970
1980
1990
2000
2010
−1
0
1
2
variabilité des longueurs
de saison SIVAKUMAR
Année
anomaliesdeslongueursdesaison
longue
courte
1960
1970
1980
1990
2000
2010
−1
0
1
2
variabilité des longueurs
de saison PRESAO
Année
anomaliesdeslongueursdesaison
longue
courte
Figure 21 – Variabilité des longueurs
Pour les deux critères la tendances à des longeurs de saisons longues est observée les 20
dernières années. Elle est plus remarquée pour le critère PRESAO.
2.4 Nombre de jour de pluie dans la saison
Il est déterminé ici les nombres de jours de pluie entre la date de début et la date de fin de
saison. Ainsi, il est fait une comparaison entre les nombres de jours de pluie sur toute l’année
civile pour évaluer les jours pluvieux non pris en compte par les critères agronomiques de
démarrage et de fin de saison.
34
dates=as.character(data[,1])
mat5=NULL
mat2=as.data.frame(mat2)
mat3=as.data.frame(mat3)
for (i in 1:49){
if(is.na(mat2$Debut_saison[i])|is.na(mat3$Fin_saison[i])){
mat5=rbind(mat5,NA)
next()
}
debutsaison=unique(as.vector(mat2[i,2]))
finsaison=unique(as.vector(mat3$Fin_saison[i]))
idebut=as.numeric(which(dates==debutsaison))
ifin=as.numeric(which(dates==finsaison))
pluiesaison=as.numeric(data$Pluie..mm.[idebut:ifin])
nbjp=length(which(pluiesaison>=1))
mat5=rbind(mat5,as.numeric(nbjp))
}
mat5=cbind(1961:2009, mat5)
plot(mat[,1],mat[,3],type = "h",lwd=3, col="blue",
ylim = c(20,65),main="Nombre de jours de pluie ",
xlab = "Années",ylab = "Nombre de jour [jour]", las=2)
lines(mat5[,1],mat5[,2],type = "l",lwd=3, col="red")
legend(x="topleft",legend=c("Nombre jour année",
"Nombre jour saison"),
cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1))
35
1960
1970
1980
1990
2000
2010
20
30
40
50
60
Nombre de jours de pluie
Années
Nombredejour[jour]
Nombre jour année
Nombre jour saison
Il ressort de l’observation de ce graphe, que les nombres de jours de pluie pour la saison
varient entre 25 et 58 jours. pour ce qui concerne les nombes de jours annuels de pluie ils se
situent entre 35 et 60jours. Les pluies en marges de la saison pluvieuse sont plus importante
entre 1961 et 1980.
3. Corrélations entre les paramètres climatiques
Il est étudié ici les corrélations entrent les valeurs quotidiennes des différents paramètres.
data.without.Na=na.omit(data)
corr=cor(data.without.Na[,-1])
cor=round(as.data.frame(corr),3)
kable(cor, format = "latex", caption = "Corrélations entre les variables",booktabs = T)
kable_styling(latex_options = c("scale_down"))
D’une façon générale, les variables de même type présentent de fortes corrélations entre
elles. Il s’agit par exemple des groupes (tmin, tmax, tmean) et (rhmin, rhmax). Il importe
de souligner certaines liaisons plus ou moins fortes mais en sens inverse. c’est le cas de
la température maximale et de l’humidité relative. Ainsi plus il fait chaud, moins l’air
atmosphérisque présente de la vapeur d’eau. La corrélation inverse entre la température
minimale et l’insolation s’explique par le fait que la température minimale est relevée à 6hTU
et donc avant l’apparition des rayons solaires. La corrélation négative entre la pluie et les
températures maximales s’explique par le fait que la survenance des précipations atténue les
36
Tableau 1 – Corrélations entre les variables
tmin...C. tmax...C. rhmin.... rhmax.... insolat..h. vent..m.s. tmean...C. Pluie..mm.
tmin...C. 1.000 0.571 0.219 0.236 -0.082 0.273 0.896 0.050
tmax...C. 0.571 1.000 -0.458 -0.247 0.360 0.001 0.876 -0.164
rhmin.... 0.219 -0.458 1.000 0.878 -0.345 -0.001 -0.119 0.348
rhmax.... 0.236 -0.247 0.878 1.000 -0.186 -0.085 0.005 0.315
insolat..h. -0.082 0.360 -0.345 -0.186 1.000 -0.084 0.147 -0.180
vent..m.s. 0.273 0.001 -0.001 -0.085 -0.084 1.000 0.161 0.053
tmean...C. 0.896 0.876 -0.119 0.005 0.147 0.161 1.000 -0.060
Pluie..mm. 0.050 -0.164 0.348 0.315 -0.180 0.053 -0.060 1.000
températures en général. Le paradoxe avec les températures minimales pour cette station
pourrait s’expliquer par le fait que la plupart des pluies surviennent en journée et donc
impactent plus sur les températures maximales. Le vent et l’humidité relative corrélent en
sens inverse puisque le vent est facteur d’évaporation et participe à l’assèchement des masses
d’air.
corrplot::corrplot(corr, method="shade", shade.col=NA,tl.col="black", tl.srt=45)
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
tm
in...C
.
tm
ax...C
.
rhm
in....rhm
ax....
insolat..h.
vent..m
.s.
tm
ean...C
.
Pluie..m
m
.
tmin...C.
tmax...C.
rhmin....
rhmax....
insolat..h.
vent..m.s.
tmean...C.
Pluie..mm.
Figure 22 – Corrélation entre les différents paramètres
37
4. Zone agroclimatique et changements attendus
A=paste("Hauteur moyenne à la station sur la période d'étude:
",mean(pluie.annuel,na.rm=T))
cat(A)
## Hauteur moyenne à la station sur la période d'étude:
## 631.516326530612
Au regard de la pluviométrie annuelle observée (moyenne de 631.5 mm/an) sur la station on
peut conclure que cette dernière se situe dans la zone sahélo-soudanienne (voir Classification
FAO, zone sahélo-soudanienne[400-600 mm]).
Au regard des différentes figures analysées, on note :
— Pour les températures : une tendance à la hausse en l’occurence pour les tempé-
ratures minimales où elle est significative avec une hausse de 0.55°C tous les 10 ans.
Cette tendance (même si elle n’est pas significative) pour les températures maximales
est de 0.03°C tous les 10 ans. Aussi, il faut noter une persistance des années chaudes
ces dernières décennies à la station ;
— Pour les précipitations : une tendance à la hausse (non signicative) des cumuls
annuels à raison d’environ 10mm tous les 10 ans. Les décennies 1970-1990 sont
déficitaires avec des deficits importants pour les années 1983,1984. 1 année sur 2 les
maximas annuels de pluie sont supérieurs à 60mm.
— Pour les Dates de début : une très grande variabilité interannuelle est observée
sur la période d’étude.
— Pour les Dates de fin : A l’instar des dates de début, les dates de fin présentent
aussi une forte variabilité interannuelle.
— Pour les longueurs de saison : une tendance a des longueurs de saison longues
pour les deux dernières décennies.
© HOUNGNIBO Mandela, Kosi Tchaa, Laminou Ibrahim.
38

Contenu connexe

Tendances

Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...
Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...
Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...FAO
 
Propiétés biologique des sols
Propiétés biologique des solsPropiétés biologique des sols
Propiétés biologique des solsSELLANI Halima
 
SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1YOUSSOUPHA MBODJI
 
Fiche de-la-culture-du-riz
Fiche de-la-culture-du-rizFiche de-la-culture-du-riz
Fiche de-la-culture-du-rizMamadou Bass
 
L'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrainL'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrainFAO
 
L’agriculture intelligente face au climat
L’agriculture intelligente face au climatL’agriculture intelligente face au climat
L’agriculture intelligente face au climatFAO
 
Zones seches : services ecosystemiques et degradation des terres
Zones seches : services ecosystemiques et degradation des terresZones seches : services ecosystemiques et degradation des terres
Zones seches : services ecosystemiques et degradation des terrescsfd
 
Conductivite thermique dans le solide
Conductivite thermique dans le solideConductivite thermique dans le solide
Conductivite thermique dans le solideKouryaniMohamed
 
Valorisation des débris végétaux par la technique de compostage amélioré en f...
Valorisation des débris végétaux par la technique de compostage amélioré en f...Valorisation des débris végétaux par la technique de compostage amélioré en f...
Valorisation des débris végétaux par la technique de compostage amélioré en f...FAO
 
TFE - Les indices de végétation
TFE - Les indices de végétationTFE - Les indices de végétation
TFE - Les indices de végétationMartin Ledant
 
L'eau en Tunisie : ressources et gouvernance
L'eau en Tunisie : ressources et gouvernanceL'eau en Tunisie : ressources et gouvernance
L'eau en Tunisie : ressources et gouvernanceAnis Kedidi
 
Chap VI SIG-Travaux Pratiques
Chap VI SIG-Travaux PratiquesChap VI SIG-Travaux Pratiques
Chap VI SIG-Travaux PratiquesMohammed TAMALI
 
Les impacts du changement climatique sur la securite alimentarie
Les impacts du changement climatique sur la securite alimentarieLes impacts du changement climatique sur la securite alimentarie
Les impacts du changement climatique sur la securite alimentarieFAO
 
Projet de fin d'étude Ingénierie de conception en Génie Civil
Projet de fin d'étude Ingénierie de conception en Génie CivilProjet de fin d'étude Ingénierie de conception en Génie Civil
Projet de fin d'étude Ingénierie de conception en Génie CivilSeckou Fossar SOUANE
 
Anophèle du groupe funestus : rôle épidémiologique
Anophèle du groupe funestus : rôle épidémiologiqueAnophèle du groupe funestus : rôle épidémiologique
Anophèle du groupe funestus : rôle épidémiologiqueInstitut Pasteur de Madagascar
 

Tendances (20)

Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...
Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...
Les champs écoles de producteurs pour une diffusion des pratiques agroécologi...
 
Propiétés biologique des sols
Propiétés biologique des solsPropiétés biologique des sols
Propiétés biologique des sols
 
SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1
 
Fiche de-la-culture-du-riz
Fiche de-la-culture-du-rizFiche de-la-culture-du-riz
Fiche de-la-culture-du-riz
 
L'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrainL'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrain
 
Td dw1
Td dw1Td dw1
Td dw1
 
L’agriculture intelligente face au climat
L’agriculture intelligente face au climatL’agriculture intelligente face au climat
L’agriculture intelligente face au climat
 
Zones seches : services ecosystemiques et degradation des terres
Zones seches : services ecosystemiques et degradation des terresZones seches : services ecosystemiques et degradation des terres
Zones seches : services ecosystemiques et degradation des terres
 
Conductivite thermique dans le solide
Conductivite thermique dans le solideConductivite thermique dans le solide
Conductivite thermique dans le solide
 
Valorisation des débris végétaux par la technique de compostage amélioré en f...
Valorisation des débris végétaux par la technique de compostage amélioré en f...Valorisation des débris végétaux par la technique de compostage amélioré en f...
Valorisation des débris végétaux par la technique de compostage amélioré en f...
 
Formation ArcGis
Formation ArcGisFormation ArcGis
Formation ArcGis
 
1150
11501150
1150
 
Analyse des sous projets PARC-DAD AT-MEDD
Analyse des sous projets PARC-DAD AT-MEDDAnalyse des sous projets PARC-DAD AT-MEDD
Analyse des sous projets PARC-DAD AT-MEDD
 
TFE - Les indices de végétation
TFE - Les indices de végétationTFE - Les indices de végétation
TFE - Les indices de végétation
 
L'eau en Tunisie : ressources et gouvernance
L'eau en Tunisie : ressources et gouvernanceL'eau en Tunisie : ressources et gouvernance
L'eau en Tunisie : ressources et gouvernance
 
Présentation expérience Tchad.pptx
Présentation expérience Tchad.pptxPrésentation expérience Tchad.pptx
Présentation expérience Tchad.pptx
 
Chap VI SIG-Travaux Pratiques
Chap VI SIG-Travaux PratiquesChap VI SIG-Travaux Pratiques
Chap VI SIG-Travaux Pratiques
 
Les impacts du changement climatique sur la securite alimentarie
Les impacts du changement climatique sur la securite alimentarieLes impacts du changement climatique sur la securite alimentarie
Les impacts du changement climatique sur la securite alimentarie
 
Projet de fin d'étude Ingénierie de conception en Génie Civil
Projet de fin d'étude Ingénierie de conception en Génie CivilProjet de fin d'étude Ingénierie de conception en Génie Civil
Projet de fin d'étude Ingénierie de conception en Génie Civil
 
Anophèle du groupe funestus : rôle épidémiologique
Anophèle du groupe funestus : rôle épidémiologiqueAnophèle du groupe funestus : rôle épidémiologique
Anophèle du groupe funestus : rôle épidémiologique
 

Similaire à Devoir analyse de données agrométéorologiques

Chiffres clés du climat France et Monde Édition 2013
Chiffres clés du climat France et Monde Édition 2013Chiffres clés du climat France et Monde Édition 2013
Chiffres clés du climat France et Monde Édition 2013GIP GERRI
 
Risques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireRisques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireSouhila Benkaci
 
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debitAdnen79
 
Dimensionnement d'un Tour (IGH) R+17 sous Eurocodes
Dimensionnement d'un Tour (IGH)  R+17 sous Eurocodes Dimensionnement d'un Tour (IGH)  R+17 sous Eurocodes
Dimensionnement d'un Tour (IGH) R+17 sous Eurocodes Souhail Bouzidi
 
Rapport de stage
Rapport de stageRapport de stage
Rapport de stagecbellisario
 
these_mlopez_16012013
these_mlopez_16012013these_mlopez_16012013
these_mlopez_16012013Morgan Lopez
 
4 1 reglement projet approuve septembre 2018
4 1 reglement  projet approuve septembre 20184 1 reglement  projet approuve septembre 2018
4 1 reglement projet approuve septembre 2018Orgerus Mairie
 
The Tragedy of the Commons and the environment. Fiscal policy in response to ...
The Tragedy of the Commons and the environment. Fiscal policy in response to ...The Tragedy of the Commons and the environment. Fiscal policy in response to ...
The Tragedy of the Commons and the environment. Fiscal policy in response to ...HlineMerten
 
Rapport TER : Conception d'un armoire de climatisation thermoéléctrique
Rapport TER : Conception d'un armoire de climatisation thermoéléctriqueRapport TER : Conception d'un armoire de climatisation thermoéléctrique
Rapport TER : Conception d'un armoire de climatisation thermoéléctriqueKarimRUIZ4
 
rapport de stage.
rapport de stage.rapport de stage.
rapport de stage.wajdi1985
 
1 3 -dup chêne morand ii6 - etude d'impact-2_integral
1 3 -dup chêne morand ii6 - etude d'impact-2_integral1 3 -dup chêne morand ii6 - etude d'impact-2_integral
1 3 -dup chêne morand ii6 - etude d'impact-2_integralrennesmetropole
 
Autonomous navigation of flying robot
Autonomous navigation of flying robotAutonomous navigation of flying robot
Autonomous navigation of flying robotdoukhioualid
 
2-l_etalement_urbain_a_l_echelle_communale.pdf
2-l_etalement_urbain_a_l_echelle_communale.pdf2-l_etalement_urbain_a_l_echelle_communale.pdf
2-l_etalement_urbain_a_l_echelle_communale.pdfIRRSK
 

Similaire à Devoir analyse de données agrométéorologiques (20)

Devoir de modelisation
Devoir de modelisationDevoir de modelisation
Devoir de modelisation
 
Meteorologie v4 p
Meteorologie v4 pMeteorologie v4 p
Meteorologie v4 p
 
Chiffres clés du climat France et Monde Édition 2013
Chiffres clés du climat France et Monde Édition 2013Chiffres clés du climat France et Monde Édition 2013
Chiffres clés du climat France et Monde Édition 2013
 
ginoux
ginouxginoux
ginoux
 
Cours thermo
Cours thermoCours thermo
Cours thermo
 
Risques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireRisques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoire
 
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit
57934829 hydrologie-cycle-de-l-eau-et-modelisation-pluie-debit
 
Dimensionnement d'un Tour (IGH) R+17 sous Eurocodes
Dimensionnement d'un Tour (IGH)  R+17 sous Eurocodes Dimensionnement d'un Tour (IGH)  R+17 sous Eurocodes
Dimensionnement d'un Tour (IGH) R+17 sous Eurocodes
 
Rapport de stage
Rapport de stageRapport de stage
Rapport de stage
 
these_mlopez_16012013
these_mlopez_16012013these_mlopez_16012013
these_mlopez_16012013
 
Doc enpc transport
Doc enpc transportDoc enpc transport
Doc enpc transport
 
Etude impact pmc
Etude impact pmcEtude impact pmc
Etude impact pmc
 
4 1 reglement projet approuve septembre 2018
4 1 reglement  projet approuve septembre 20184 1 reglement  projet approuve septembre 2018
4 1 reglement projet approuve septembre 2018
 
The Tragedy of the Commons and the environment. Fiscal policy in response to ...
The Tragedy of the Commons and the environment. Fiscal policy in response to ...The Tragedy of the Commons and the environment. Fiscal policy in response to ...
The Tragedy of the Commons and the environment. Fiscal policy in response to ...
 
Zones climatiques
Zones climatiquesZones climatiques
Zones climatiques
 
Rapport TER : Conception d'un armoire de climatisation thermoéléctrique
Rapport TER : Conception d'un armoire de climatisation thermoéléctriqueRapport TER : Conception d'un armoire de climatisation thermoéléctrique
Rapport TER : Conception d'un armoire de climatisation thermoéléctrique
 
rapport de stage.
rapport de stage.rapport de stage.
rapport de stage.
 
1 3 -dup chêne morand ii6 - etude d'impact-2_integral
1 3 -dup chêne morand ii6 - etude d'impact-2_integral1 3 -dup chêne morand ii6 - etude d'impact-2_integral
1 3 -dup chêne morand ii6 - etude d'impact-2_integral
 
Autonomous navigation of flying robot
Autonomous navigation of flying robotAutonomous navigation of flying robot
Autonomous navigation of flying robot
 
2-l_etalement_urbain_a_l_echelle_communale.pdf
2-l_etalement_urbain_a_l_echelle_communale.pdf2-l_etalement_urbain_a_l_echelle_communale.pdf
2-l_etalement_urbain_a_l_echelle_communale.pdf
 

Plus de mandela HOUNGNIBO

Validation of cmsaf_lsasaf_data
Validation of cmsaf_lsasaf_dataValidation of cmsaf_lsasaf_data
Validation of cmsaf_lsasaf_datamandela HOUNGNIBO
 
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES EN AFRIQUE
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES  EN AFRIQUEPREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES  EN AFRIQUE
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES EN AFRIQUEmandela HOUNGNIBO
 
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...mandela HOUNGNIBO
 
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMET
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMETDROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMET
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMETmandela HOUNGNIBO
 
Rencontre Média-METEO BENIN
Rencontre Média-METEO BENINRencontre Média-METEO BENIN
Rencontre Média-METEO BENINmandela HOUNGNIBO
 

Plus de mandela HOUNGNIBO (6)

Poster tendances
Poster tendancesPoster tendances
Poster tendances
 
Validation of cmsaf_lsasaf_data
Validation of cmsaf_lsasaf_dataValidation of cmsaf_lsasaf_data
Validation of cmsaf_lsasaf_data
 
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES EN AFRIQUE
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES  EN AFRIQUEPREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES  EN AFRIQUE
PREVISION SAISONNIERE DES CARACTERISTIQUES AGROCLIMATIQUES EN AFRIQUE
 
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...
AGRHYMET: RESUME DE l'AR5 DU GIEC EN TERMES D'EVOLUTION DE TEMPERATURES, DE P...
 
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMET
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMETDROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMET
DROUGHT IN SAHEL MANDELA HOUNGNIBO AGRHYMET
 
Rencontre Média-METEO BENIN
Rencontre Média-METEO BENINRencontre Média-METEO BENIN
Rencontre Média-METEO BENIN
 

Dernier

Les Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel MacronLes Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel Macroncontact Elabe
 
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...Mohamed Bouanane
 
To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentationbahija babzine
 
Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023France Travail
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformersbahija babzine
 
Recurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxRecurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxbahija babzine
 

Dernier (6)

Les Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel MacronLes Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel Macron
 
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...
Libérer le Potentiel à l'Ère de la Transformation Numérique pour des Organisa...
 
To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentation
 
Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformers
 
Recurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxRecurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptx
 

Devoir analyse de données agrométéorologiques

  • 1. CENTRE REGIONAL AGRHYMET Devoir d’Analyse de données I - IA3 HOUNGNIBO Mandela, Kosi Tchaa et Ibrahim Laminou 28 octobre 2018 Table des matières 1. Variabilité saisonnière et interannuelle des différents paramètres clima- tiques 3 1.1 Variabilité saisonnière . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Moyenne sur la période 1961-2009 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1.1 Variabilité saisonnière Températures . . . . . . . . . . . . . . . . . . . 5 1.1.2 Variabilité saisonnière Humidités . . . . . . . . . . . . . . . . . . . . . 7 1.1.3 Variabilité saisonnière Insolation . . . . . . . . . . . . . . . . . . . . . . 8 1.1.4 Variabilité saisonnière Vent . . . . . . . . . . . . . . . . . . . . . . . . 9 1.1.5 Variabilité saisonnière Pluie . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2 Variabilité interannuelle des paramètres climatiques . . . . . . . . . . . . . . . 13 1.2.1 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . 14 1.2.2 Variabilité des précipitations annuelles . . . . . . . . . . . . . . . . . . 19 1.2.3 Variabilité des vitesses de vent . . . . . . . . . . . . . . . . . . . . . . . 21 1.2.4 Variabilité des paramètres Humidité et insolation . . . . . . . . . . . . 22 2. Date de début et Date de fin de saison, nombre de jour de pluie 23 2.1 Date de début de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2 Date de fin de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.3 Longueur de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.4 Nombre de jour de pluie dans la saison . . . . . . . . . . . . . . . . . . . . . . 34 3. Corrélations entre les paramètres climatiques 36 4. Zone agroclimatique et changements attendus 38 Liste des tableaux 1 Corrélations entre les variables . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Liste des figures 1 Régime de Températures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1
  • 2. 2 Régime Hygrométrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3 Durée d’insolation mensuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4 Vent saisonnier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5 Occurence des vitesses de vent . . . . . . . . . . . . . . . . . . . . . . . . . . 10 6 Régime pluviométrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 7 Fréquence des Pluies journalières et mensuelles . . . . . . . . . . . . . . . . . 12 8 Evolution de la Pluviométrie et de la Température Moyennes 1961-2009 . . . 13 9 Evolution des températures . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 10 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . . . . 17 11 Variabilité interannuelle des températures . . . . . . . . . . . . . . . . . . . 18 12 Evolution des précipitations annuelles . . . . . . . . . . . . . . . . . . . . . . 20 13 Variabilité des précipitations annuelles . . . . . . . . . . . . . . . . . . . . . 21 14 Vent : vitesse interannuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 15 Evolution interannuelle de l’insolation et de l’humidité . . . . . . . . . . . . 23 16 Date de début de saison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 17 Variabilité des dates de début . . . . . . . . . . . . . . . . . . . . . . . . . . 27 18 Evolution des dates de fin de saison . . . . . . . . . . . . . . . . . . . . . . . 31 19 comparaison de la distribution des dates de fin selon les deux critères . . . . 32 20 Evolution des longueurs de saisons . . . . . . . . . . . . . . . . . . . . . . . 33 21 Variabilité des longueurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 22 Corrélation entre les différents paramètres . . . . . . . . . . . . . . . . . . . 37 2
  • 3. 1. Variabilité saisonnière et interannuelle des différents paramètres climatiques Library Utilisé #Library utilisé rm(list = ls()) require(xts) # série temporel require(hydroTSM) #analyse hydrologique require(ggplot2) # grammaire de graphiques require(scales)#dates require(lubridate) require(reshape2) require(dplyr) require(trend) Importation, traitement des données et différents résumés setwd("C:/agro_analyse/devoir_de_groupe") #lecture des données data=read.table(paste(getwd(),"station_G5.txt",sep = "/"), header=T,sep ="t",dec = ".", na.strings = "-9999") #transformation en série temporelle data.xts<- xts(data[,-1],seq.Date(as.Date("1961-01-01"), as.Date("2009-12-31"),"day")) #Résumés saisonniers et annuels #moyenne moyenne.mensuel=apply.monthly(data.xts[,-8],mean,na.rm=T) moyenne.mens=moyenne.mensuel insolation.mensuel=apply.monthly(data.xts$insolat..h.,sum,na.rm=T) Pluie.mensuel=tapply(data$Pluie..mm., list(year(seq.Date(as.Date("1961-01-01"), as.Date("2009-12-31"),"day")), month(seq.Date(as.Date("1961-01-01"), as.Date("2009-12-31"),"day"))),sum,na.rm=T) #annuel moyenne.annuel=apply.yearly(data.xts[,-8],mean,na.rm=T) pluie.annuel=apply.yearly(data.xts$Pluie..mm.,sum,na.rm=T) insolation.annuel=apply.yearly(data.xts$insolat..h.,sum,na.rm=T) pluie.maxi.an=apply.yearly(data.xts$Pluie..mm.,max, na.rm=T) vent.maxi.an=apply.yearly(data.xts$vent..m.s.,max, na.rm=T) vent.maxi.an[vent.maxi.an==-Inf]<-NA 3
  • 4. #manipulation des données pour les graphiques moyenne.mensuel=as.data.frame(moyenne.mensuel) colnames(moyenne.mensuel)=c("Tmin","Tmax","Umin","Umax","Insolation","Vent", "Tmoy") attach(moyenne.mensuel) moyenne.mensuel$year=year(row.names(moyenne.mensuel)) moyenne.mensuel$month=month(row.names(moyenne.mensuel)) moyenne.mensuel=reshape2::melt(data=moyenne.mensuel, measure.vars=names(moyenne.mensuel)[-c(8,9)], id.vars=c("year","month")) moyenne.mensuel$Date=as.Date(paste(moyenne.mensuel$year, moyenne.mensuel$month,"01",sep = "-")) moy.61.09.param=tapply(moyenne.mensuel$value,list(moyenne.mensuel$month, moyenne.mensuel$variable),mean,na.rm=T pluie.=apply(Pluie.mensuel,2,mean,na.rm=T) moy.61.09.param=cbind(moy.61.09.param,pluie.) monthOrder <- c('janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.') moyenne.mensuel$Month <- factor(format(moyenne.mensuel$Date, "%b"), levels = monthOrder) Insolation.moyenne=moyenne.mensuel[moyenne.mensuel$variable=="Insolation", c(6,4)] Insolation.moy.cumul=cbind(Insolation.moyenne, as.data.frame(insolation.mensuel)) colnames(Insolation.moy.cumul)=c("Month","Insolation Moyenne Mensuelle","Insolation cumu Insolation.moy.cumul=reshape2::melt(data=Insolation.moy.cumul, measure.vars=names(Insolation.moy.cumul)[c(2,3)], id.vars="Month") vent=moyenne.mensuel[moyenne.mensuel$variable=="Vent",4] #min(vent,na.rm = T) #max(vent,na.rm = T) detach(moyenne.mensuel) 1.1 Variabilité saisonnière Moyenne sur la période 1961-2009 Il est présenté ci-dessous un tableau des moyennes mensuelles des paramètres températures, humidités, insolation et vent calculées sur la période 1961-2009. #Moyennes mensuelles sur 61-2009 x1=as.data.frame(cbind(Mois=month.abb[1:12],round(moy.61.09.param,2))) #x1=round(x1,2) 4
  • 5. kable(x1, "latex", booktabs = T) Mois Tmin Tmax Umin Umax Insolation Vent Tmoy pluie. Jan 16.67 32.46 12.15 38.18 9.24 2.01 24.56 0.16 Feb 19.2 35.67 10.05 34.58 9.45 2.08 27.44 0.18 Mar 23.01 38.55 10.52 34.94 8.82 2.1 30.78 1.8 Apr 26.36 40.42 14.81 45.45 8.68 2.16 33.39 7.91 May 27.28 39.98 23.35 64.46 9.09 2.55 33.63 31.16 Jun 25.32 36.94 34.81 78.55 8.78 2.77 31.13 87.66 Jul 23.47 33.7 47.52 89.94 8.41 2.34 28.59 162.21 Aug 22.74 32.15 55.14 94.73 7.97 1.82 27.45 200.5 Sep 22.92 33.66 48.87 92.83 8.43 1.62 28.29 110.33 Oct 23.31 37.2 27.06 77.27 9.2 1.42 30.26 28.53 Nov 19.93 36.42 14.3 51.32 9.64 1.45 28.17 0.83 Dec 17.29 33.35 13.45 42.62 9.25 1.76 25.32 0.25 1.1.1 Variabilité saisonnière Températures ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable%in% c("Tmin","Tmax","Tmoy"),], mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+ ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) + theme(axis.text.x = element_text(angle = 90,hjust = 1))+ theme(legend.position="bottom",legend.background = element_rect(fill="lightblue", ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 2,ncol = 2) + ggplot2::labs(title="Régime de températures--Période:1961-2009") + ggplot2::xlab(label="Mois")+ggplot2::ylab(label= "Températures[°C]")+ labs(fill="Variables climatiques") 5
  • 6. Tmoy Tmin Tmax janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. 32 36 40 15 20 25 24 28 32 36 Mois Températures[°C] Variables climatiques Tmin Tmax Tmoy Régime de températures−−Période:1961−2009 Figure 1 – Régime de Températures Cette figure (figure 1) représente l’évolution saisonnière de la température sur la période 1961 à 2009. L’analyse de cette figure permet de dire que la température minimale présente une ondulation au cours de l’année avec des maximas en Avril-Mai (en moyenne 27.3°C pour le mois de mai) et les mois de Janvier et Décembre sont les mois les plus frais (moyenne de 16°C pour Janvier). Ces faibles valeurs de températures au cours des mois de décembre Janvier seraient liées à l’envahissement des vents frais et secs d’harmattan venant du Sahara et qui balayent toute la sous-région ouest africaine. Les températures minimales affichent une faible dispersion aux mois de Juillet Août et Septembre qui correspondent à la période hivernale de la zone. Les températures maximales épousent elles aussi l’allure de celles minimales avec deux pics ; le premier pic observé au cours des mois de Mars-Avril-Mai (mois les plus chauds) et le deuxième enregistré au cours des mois d’Octobre et Novembre. Les mois de Juillet Août et Septembre sont les mois les moins chauds avec des températures de l’ordre de 28-36°C. Les hautes températures obtenues au cours des mois de Mars-Avril-Mai sont liées au fait que cette période correspond au cour de la saison sèche. Les températures moyennes évoluent entre 17 et 27°C pour les minimales et 32 et 40°C pour les maximales. 6
  • 7. 1.1.2 Variabilité saisonnière Humidités ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable%in%c("Umin","Umax"),], mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+ ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) + theme(axis.text.x = element_text(angle = 90,hjust = 1))+ theme(legend.position="bottom",legend.background = element_rect(fill="lightblue", ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 1,ncol = 2) + ggplot2::labs(title="Régime Hygrométrique--Période:1961-2009") + ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Humidité relative en [%]")+ labs(fill="Variables climatiques") Umin Umax janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. 20 40 60 80 100 20 40 60 Mois Humiditérelativeen[%] Variables climatiques Umin Umax Régime Hygrométrique−−Période:1961−2009 Figure 2 – Régime Hygrométrique la figure 2 représente l’évolution de l’humidité. L’humidité relative dans son évolution au cours de la saison se présente sous la forme d’une cloche assymétrique vers la droite. L’humidité minimale est inférieure à 20% au cours des mois de Novembre à Mars et est supérieure à 40% entre juillet et Aout. L’humidité maximale (à droite sur la figure) a la même évolution que la minimale avec des taux inférieurs à 50% en saison sèche et supérieur à 80% entre juillet et 7
  • 8. Aout. Il faut remarquer que les deux types d’humidités se comportent de façon oppose au niveau de la dispersion. En effet l’humidité minimale à une forte dispersion en saison humide et une faible dispersion entre Novembre et Avril contrairement à l’humidité maximale qui connait une faible dispersion entre Juillet et Septembre et forte dispersion le reste de l’année. 1.1.3 Variabilité saisonnière Insolation ggplot2::ggplot(data=Insolation.moy.cumul, mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+ ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) + theme(axis.text.x = element_text(angle = 90,hjust = 1))+ theme(legend.position="bottom",legend.background = element_rect(fill="lightblue", ggplot2::facet_wrap(facets= ~ variable, dir="h", scales="free",nrow = 1,ncol = 2) + ggplot2::labs(title="Durée d'insolation--Période:1961-2009") + ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Insolation en [heure]")+ labs(fill="Variables climatiques") Insolation Moyenne Mensuelle Insolation cumul mensuel janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. 0 100 200 300 7 8 9 10 11 Mois Insolationen[heure] Variables climatiques Insolation Moyenne Mensuelle Insolation cumul mensuel Durée d'insolation−−Période:1961−2009 Figure 3 – Durée d’insolation mensuelle 8
  • 9. L’insolation moyenne mensuelle connait une grande dispersion au cours de l’année contrai- rement à son cumul mensuel au cours de la période 1961 à 2009 (figure 3). Les moyennes mensuelles varient entre 7 et 10heures par mois et les cumuls sont généralement supérieurs à 225 heures par mois. Les plus petites valeurs se retrouvent au cours des mois de Juillet-Aout- Septembre et cela s’explique par le fait que cette période correspond à la saison pluvieuse. La saison pluvieuse est marquée par un ciel généralement nuageux empêchant ainsi les rayonnements solaires de parvenir à la surface terrestre. Les fortes moyennes sont enregistrées en saison sèche (figure 3). 1.1.4 Variabilité saisonnière Vent ggplot2::ggplot(data=moyenne.mensuel[moyenne.mensuel$variable==c("Vent"),], mapping=ggplot2::aes(y=value, fill=variable, x=Month) )+ ggplot2::geom_boxplot(outlier.colour="black", show.legend=TRUE) + theme(axis.text.x = element_text(angle = 90,hjust = 1))+ theme(legend.position="bottom",legend.background = element_rect(fill="lightblue", size=0.5, linetype="solid"), legend.title = element_text(colour="blue", size=10,face="bold"))+ ggplot2::labs(title="Vitesse du vent--Période:1961-2009") + ggplot2::xlab(label="Mois")+ggplot2::ylab(label="Vitesse du vent en [m/s]")+ labs(fill="Variables climatiques") 1 2 3 4 janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc. Mois Vitesseduventen[m/s] Variables climatiques Vent Vitesse du vent−−Période:1961−2009 Figure 4 – Vent saisonnier 9
  • 10. La vitesse du vent représentée sur la figure 4 est globalement supérieure à 0,5m/s et inférieure à 3,5m/s. Les mois de Mai et Juin enregistrent les fortes vitesses du vent comprises entre 1,5 et 4m/s mais le vent affiche aussi une forte dispersion pendant cette même période. Cela pourra être lié au début de la saison pluvieuse avec la prédominance des grains orageux. hist(vent, breaks=seq(0,5,1), main="Fréquences des vitesses de vent", xlab="Vitesse de vent (moyenne mensuelle)[en m/s]", ylab="Occurence",col="cyan") Fréquences des vitesses de vent Vitesse de vent (moyenne mensuelle)[en m/s] Occurence 0 1 2 3 4 5 0100200 Figure 5 – Occurence des vitesses de vent Les fortes occurrences de vitesse de vent mensuelle sont comprises entre 1 à 3m/s. Les vents forts de 4 à 5m/s par mois sont moins fréquents dans la zone. 1.1.5 Variabilité saisonnière Pluie boxplot(Pluie.mensuel,names = month.abb[1:12],col="cyan", main="Régime pluviométrique", ylab="Pluie(mm/mois)",xlab="Mois",las=2) lines(1:12,apply(Pluie.mensuel,2,mean),col="red",lwd=2) legend(x="topleft",legend=c("moyenne mensuelle"), cex = 0.6,lwd = 2, col = "red",lty = 1) 10
  • 11. Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 0 100 200 300 400 Régime pluviométrique Mois Pluie(mm/mois) moyenne mensuelle Figure 6 – Régime pluviométrique Le régime pluviométrique est monomodal. La pluviométrie moyenne mensuelle présente une forte variabilité au cours de l’année. La période de Juin à septembre sont les mois les plus arrosés avec des quantités en moyenne supérieures à 100mm. Le mois d’Août est le mois au cours duquel la zone enregistre de forte pluviométrie avec des hauteurs moyennes atteignant 200mm. Le cumul mensuel présente toutefois une forte dispersion au cours de ce mois. A partir de cette représentation graphique on peut dire que la saison de pluie dans la zone va de juin à septembre avec plus de 80% du cumul annuel. par(mfrow=c(1,2)) hist(data$Pluie..mm., breaks=seq(0,120,5), main="Fréquences des pluies n journalières", xlab="classes des hauteurs n journalières[en mm/jour]", ylab="Occurence",col="cyan") hist(apply.monthly(data.xts[,8]$Pluie..mm.,sum), breaks=seq(0,450,50), main="Fréquences des pluies n mensuelles", xlab="classes des hauteurs n mensuelles[en mm/mois]", ylab="Occurence",col="cyan") 11
  • 12. Fréquences des pluies journalières classes des hauteurs journalières[en mm/jour] Occurence 0 20 60 100 050001000015000 Fréquences des pluies mensuelles classes des hauteurs mensuelles[en mm/mois] Occurence 0 100 300 0100200300400 Figure 7 – Fréquence des Pluies journalières et mensuelles Les hauteurs des précipitations journalières présentent des fréquences très variables sur la période d’étude (1961-2009). Les hauteurs journalières inférieures 5mm sont très fréquemment observées dans la zone. Les précipitations supérieures à 60mm bien qu’elles soient très rares ont été observéees sur la période d’étude dans la zone. Les pluviométries mensuelles inférieures à 50mm présentent une plus forte occurrence . climograph(apply.monthly(data.xts[,8]$Pluie..mm.,sum), moyenne.mens$tmean...C.,na.rm = T, main="Evolution de la Pluviométrie et de la Température Moyennes 1961-2009") 12
  • 13. Jan Mar May Jul Sep Nov Evolution de la Pluviométrie et de la Température Moyennes 1961−2009Precipitation,[mm] 0 50 100 150 200 250 0.2 0.2 1.8 7.9 31.2 87.7 160.8 200.5 110.3 28.5 0.8 0.2 24.6 27.4 30.8 33.4 33.6 31.1 28.6 27.4 28.3 30.3 28.2 25.3 24 26 28 30 32 34 Temperature,[°C] Precipitation Temperature Figure 8 – Evolution de la Pluviométrie et de la Température Moyennes 1961-2009 Cette figure n’est qu’une synthèse de l’évolution saisonnière des paramètres pluie et tempéra- tures sur la zone. les températures moyennes (en rouge) et la pluviométrie (en batons bleu) moyennes mensuelles sur la période y sot représentées. 1.2 Variabilité interannuelle des paramètres climatiques ##études de ruptures dans les séries de températures et de précipitations TminK=mk.test(ts(moyenne.annuel$tmin...C.,start = 1961,end = 2009,frequency = 1)) Tminpt=pettitt.test(ts(moyenne.annuel$tmin...C.,start = 1961,end = 2009,frequency = 1)) TmaxK=mk.test(ts(moyenne.annuel$tmax...C.,start = 1961,end = 2009,frequency = 1)) Tmaxpt=pettitt.test(ts(moyenne.annuel$tmax...C.,start = 1961,end = 2009,frequency = 1)) RRK=mk.test(ts(pluie.annuel,start = 1961,end = 2009,frequency = 1)) RRpt=pettitt.test(ts(pluie.annuel,start = 1961,end = 2009,frequency = 1)) RR_maxK=mk.test(ts(pluie.maxi.an ,start = 1961,end = 2009,frequency = 1)) RR_maxpt=pettitt.test(ts(pluie.maxi.an ,start = 1961,end = 2009,frequency = 1)) ##regression Tminreg=lm(moyenne.annuel$tmin...C.~year(moyenne.annuel$tmin...C.)) Tmaxreg=lm(moyenne.annuel$tmax...C.~year(moyenne.annuel$tmax...C.)) 13
  • 14. RRreg=lm(pluie.annuel$Pluie..mm.~year(pluie.annuel$Pluie..mm.)) RR_maxreg=lm(pluie.maxi.an$Pluie..mm.~year(pluie.maxi.an$Pluie..mm.)) #IPS TminIPS=scale(moyenne.annuel$tmin...C., mean(moyenne.annuel$tmin...C.[1:30], sd(moyenne.annuel$tmin...C.[1:30]))) TmaxIPS=scale(moyenne.annuel$tmax...C., mean(moyenne.annuel$tmax...C.[1:30], sd(moyenne.annuel$tmax...C.[1:30]))) TmeanIPS=scale(moyenne.annuel$tmean...C., mean(moyenne.annuel$tmean...C.[1:30], sd(moyenne.annuel$tmean...C.[1:30]))) RRIPS=scale(pluie.annuel$Pluie..mm., mean(pluie.annuel$Pluie..mm.[1:30], sd(pluie.annuel$Pluie..mm.[1:30]))) ##moving average moymobTmin=stats::filter(TminIPS$tmin...C.,rep(1/5,5), side=2) moymobTmax=stats::filter(TmaxIPS$tmax...C.,rep(1/5,5), side=2) moymobTmean=stats::filter(TmeanIPS$tmean...C.,rep(1/5,5), side=2) moymobRRIPS=stats::filter(RRIPS$Pluie..mm.,rep(1/5,5), side=2) 1.2.1 Variabilité interannuelle des températures ###graphes températures par(mfrow=c(1,2)) plot(year(moyenne.annuel$tmin...C.),moyenne.annuel$tmin...C.,type = "l",lwd=3, col="red", main="Evolution des n températures minimales", xlab = "Années",ylab = "°C", las=2) abline(Tminreg$coefficients,lwd=2) mtext(paste("tau=",signif(TminK$estimates[3],2)," p-value=", signif(TminK$p.value,2),sep = ""),3) mtext(paste("Année=",year(moyenne.annuel[Tminpt$estimate]), " p-value=",signif(Tminpt$p.value,2),sep = ""),4) segments(1961,mean(moyenne.annuel$tmin...C.[1:22],na.rm=T),1982, mean(moyenne.annuel$tmin...C.[1:22],na.rm=T),col="blue",lwd = 3) segments(1982,mean(moyenne.annuel$tmin...C.[22:49],na.rm=T),2009, mean(moyenne.annuel$tmin...C.[22:49],na.rm=T), col="cyan",lwd = 3) 14
  • 15. legend(x="bottomright",legend=c("moyenne annuelle","moyenne Période 1", "moyenne période 2","Tendance"),cex = 0.55,lwd = 2, col = c("red","blue","cyan","black"),lty = c(1,1,1,1)) plot(year(moyenne.annuel$tmax...C.),moyenne.annuel$tmax...C.,type = "l",lwd=3, col="red",main="Evolution des n températures maximales", xlab = "Années",ylab = "°C", las=2) abline(Tmaxreg$coefficients,lwd=2) mtext(paste("tau=",signif(TmaxK$estimates[3],2)," p-value=", signif(TmaxK$p.value,2),sep = ""),3) mtext(paste("Année=",year(moyenne.annuel[Tmaxpt$estimate])," p-value=", signif(Tmaxpt$p.value,2),sep = ""),4) segments(1961,mean(moyenne.annuel$tmax...C.[1:8],na.rm=T),1968, mean(moyenne.annuel$tmax...C.[1:8],na.rm=T), col="blue",lwd = 3) segments(1968,mean(moyenne.annuel$tmax...C.[8:49],na.rm=T),2009, mean(moyenne.annuel$tmax...C.[8:49],na.rm=T), col="cyan",lwd = 3) legend(x="bottomright",legend=c("moyenne annuelle","moyenne Période 1", "moyenne période 2","Tendance"),cex = 0.5,lwd = 2, col = c("red","blue","cyan","black"),lty = c(1,1,1,1)) 15
  • 16. 1960 1970 1980 1990 2000 2010 20.5 21.0 21.5 22.0 22.5 23.0 23.5 Evolution des températures minimales Années °C tau=0.69 p−value=3.5e−12 Année=1982p−value=6.3e−08 moyenne annuelle moyenne Période 1 moyenne période 2 Tendance 1960 1970 1980 1990 2000 2010 35.0 35.5 36.0 36.5 Evolution des températures maximales Années °C tau=0.063 p−value=0.53 Année=1968p−value=0.52 moyenne annuelle moyenne Période 1 moyenne période 2 Tendance Figure 9 – Evolution des températures La figure ci-dessus présente la variation interannuelle des températures minimales et maximales. On note une tendance à la hausse aussi bien pour les Températures minimales que maximales. Cependant la hausse est plus importante et significative (le test de Mann- Kendall utilisé avec un niveau de significativité au seuil de 5%) pour les températures minimales (0.5°C /10ans) que les températures maximales (0.03°C/10ans). L’utilisation du test de Pettit avec un niveau de significativité au seuil de 5% a permis de détecter les années de ruptures. L’année de rupture trouvée pour les Tmin est 1982 avec un pvalue <0.05. La différence de moyenne entre les deux périodes (avant 1982 et après 1982) est de l’ordre 1.5°C. Pour la température maximale, il n’y a pas de rupture significative. hausse de température devient continue et plus importante sur les températures minimales que sur les températures maximales #variabilité des températures par(mfrow=c(1,2)) plot(year(TminIPS),TminIPS,col=ifelse(TminIPS>0,"red","blue"),type = "h" ,ylab = "anomalies de températures",xlab = "Année", las=2, main= "variation de la température n minimale",lwd=2) lines(year(TminIPS),moymobTmin,lwd=2,col="black") 16
  • 17. legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"), cex = 0.6,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1)) plot(year(TmaxIPS),TmaxIPS,col=ifelse(TmaxIPS>0,"red","blue"),type = "h" ,ylab = "anomalies de températures",xlab = "Année", las=2, main= "variation de la température n maximale",lwd=2) lines(year(TmaxIPS),moymobTmax,lwd=2,col="black") legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"), cex = 0.6,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1)) lines(year(TmaxIPS),moymobTmax,lwd=2,col="black") 1960 1970 1980 1990 2000 2010 −1.0 −0.5 0.0 0.5 1.0 1.5 2.0 variation de la température minimale Année anomaliesdetempératures Année Chaude Année froide moy−mob 1960 1970 1980 1990 2000 2010 −2 −1 0 1 variation de la température maximale Année anomaliesdetempératures Année Chaude Année froide moy−mob Figure 10 – Variabilité interannuelle des températures par(mfrow=c(1,1)) y=plot(year(TmeanIPS),TmeanIPS,col=ifelse(TmeanIPS>0,"red","blue"), type = "h",lwd=2,ylab = "anomalies de températures",xlab = "Année", las=2, main= "Variabilité de la température moyenne") lines(year(TmeanIPS),moymobTmean,lwd=2,col="black") legend(x="bottomright",legend=c("Année Chaude","Année froide","moy-mob"), 17
  • 18. cex = 0.8,lwd = 2, col = c("red","blue","black"),lty = c(1,1,1)) 1960 1970 1980 1990 2000 2010 −2 −1 0 1 2 Variabilité de la température moyenne Année anomaliesdetempératures Année Chaude Année froide moy−mob Figure 11 – Variabilité interannuelle des températures De l’observation de ces figures sur la variabilité des températures, il ressort : — Pour la température minimale Une tendance d’années relativement froides (1961-1980) en comparaison à la moyenne 61-90 et une tendance maintenue d’année chaudes de 1981-2009. Les 10 années les plus chaudes s’observent pour la plupart ces 20 dernières années. — Pour la température maximale on note une certaine variabilité des températures maximales avec une tendance à des années chaudes ces dernières années — Pour les températures moyennes une situation similaire à la température minimale est observée. 18
  • 19. 1.2.2 Variabilité des précipitations annuelles #Graphe des pluies par(mfrow=c(1,2)) plot(year(pluie.annuel$Pluie..mm.),pluie.annuel$Pluie..mm.,type = "l",lwd=3, col="red", main="Evolution des n cumuls annuels", xlab = "Années",ylab = "Pluie en [mm/an]", las=2) abline(RRreg$coefficients,lwd=2) mtext(paste("tau=",signif(RRK$estimates[3],2)," p-value=", signif(RRK$p.value,2),sep = ""),3) mtext(paste("Année=",year(pluie.annuel[RRpt$estimate])," p-value=", signif(RRpt$p.value,2),sep = ""),4) segments(1961,mean(pluie.annuel$Pluie..mm.[1:30],na.rm=T),1990, mean(pluie.annuel$Pluie..mm.[1:30],na.rm=T), col="blue",lwd = 3) segments(1990,mean(pluie.annuel$Pluie..mm.[30:49],na.rm=T),2009, mean(pluie.annuel$Pluie..mm.[30:49],na.rm=T), col="cyan",lwd = 3) legend(x="topleft",legend=c("cumul annuel","cumul moyen Période 1", "cumul moyen période 2","Tendance"),cex = 0.5,lwd = 2, col = c("red","blue","cyan","black"),lty = c(1,1,1,1)) plot(year(pluie.maxi.an$Pluie..mm.),pluie.maxi.an$Pluie..mm.,type = "l", lwd=3, col="red",main="Evolution des pluies n maxi annuels", xlab = "Années",ylab = "Pluie en [mm/an]", las=2) abline(RR_maxreg$coefficients,lwd=2) mtext(paste("tau=",signif(RR_maxK$estimates[3],2)," p-value=", signif(RR_maxK$p.value,2),sep = ""),3) mtext(paste("Année=",year(pluie.annuel[RR_maxpt$estimate])," p-value=", signif(RR_maxpt$p.value,2),sep = ""),4) segments(1961,mean(pluie.maxi.an$Pluie..mm.[1:27],na.rm=T),1987, mean(pluie.maxi.an$Pluie..mm.[1:27],na.rm=T), col="blue",lwd = 3) segments(1987,mean(pluie.maxi.an$Pluie..mm.[27:49],na.rm=T),2009, mean(pluie.maxi.an$Pluie..mm.[27:49],na.rm=T), col="cyan",lwd = 3) legend(x="topright",legend=c("maxi annuel","moyen maxi Période 1", "moyen maxi période 2","Tendance"),cex = 0.5,lwd = 2, col = c("red","blue","cyan","black"),lty = c(1,1,1,1)) 19
  • 20. 1960 1970 1980 1990 2000 2010 400 500 600 700 800 900 Evolution des cumuls annuels Années Pluieen[mm/an] tau=0.043 p−value=0.67 Année=1990p−value=0.28 cumul annuel cumul moyen Période 1 cumul moyen période 2 Tendance 1960 1970 1980 1990 2000 2010 40 60 80 100 Evolution des pluies maxi annuels Années Pluieen[mm/an] tau=0.035 p−value=0.73 Année=1987p−value=0.45 maxi annuel moyen maxi Période 1 moyen maxi période 2 Tendance Figure 12 – Evolution des précipitations annuelles Il est présenté ci-dessus l’évolution des cumuls annuels et des pluies maxi annuels. on note un forte variation du cumul (400- plus de 900mm). On constate un tendance à la hausse qui cependant au test de Man-Kendall n’est pas significative. Aussi le test de pettit appliqué révèle l’année 1990 comme rupture avec pvalue>0.05 donc non significatif. Néanmoins nous avons essayé de calculer la différence de moyenne entre les deux périodes qui est de 50mm environ. Dans 50% de cas les pluies maxi annuels sont supérieurs à 60mm. elles sont supérieures à 80mm 9années/49. #variabilité des précipitations par(mfrow=c(1,1)) y=plot(year(RRIPS),RRIPS,col=ifelse(RRIPS<0,"red","blue"),type = "h" ,ylab = "IPS",xlab = "Année", las=2,main= "variabilité des cumuls annuels",lwd=3) lines(year(RRIPS),moymobRRIPS,lwd=2,col="black") legend(x="topleft",legend=c("Année excédentaire","Année déficitaire","moy-mob"), cex = 0.8,lwd = 2, col = c("blue","red","black"),lty = c(1,1,1)) 20
  • 21. 1960 1970 1980 1990 2000 2010 −1 0 1 2 variabilité des cumuls annuels Année IPS Année excédentaire Année déficitaire moy−mob Figure 13 – Variabilité des précipitations annuelles De l’observation de cette figure sur la variabilité des cumuls pluviométriques, il ressort une tendance d’années déficitaires entre 1970 et 1990 et deux periodes d’années excédentaires : 1960-1969 et 1991-2009. Les années de deficit remarquables sont 1983,1984. 1.2.3 Variabilité des vitesses de vent ##Graphe des vents par(mfrow=c(1,2)) plot(year(moyenne.annuel$vent..m.s.),moyenne.annuel$vent..m.s.,type = "l", lwd=3, col="red",main="Evolution des vitesses n de vent", xlab = "Années",ylab = "vitesse du vent en[m/s]", las=2) plot(year(vent.maxi.an$vent..m.s.),vent.maxi.an$vent..m.s.,type = "l", lwd=3, col="red",main="Evolution des n vents maxi annuels", xlab = "Années",ylab = "vitesse du vent en[m/s]", las=2) 21
  • 22. 1960 1970 1980 1990 2000 20101.5 2.0 2.5 Evolution des vitesses de vent Années vitesseduventen[m/s] 1960 1970 1980 1990 2000 2010 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 Evolution des vents maxi annuels Années vitesseduventen[m/s] Figure 14 – Vent : vitesse interannuelle Les moyennes annuelles de vitesses de vent sont comprises entre 1 et 3 m/s. Elles présentent une tendance à la hausse. Les maxi journaliers de vitesse de vent dépassent dans plus de 60% des observations les 05m/s. 1.2.4 Variabilité des paramètres Humidité et insolation #graphes humidités et insolation par(mfrow=c(1,2)) plot(year(moyenne.annuel$rhmax....),moyenne.annuel$rhmax....,type = "l",lwd=3, col="red",main="Evolution de l'humidité n relative",xlab = "Années", ylab = "Humidité relative en[%]", las=2, ylim = c(10,70)) lines(year(moyenne.annuel$rhmin....), moyenne.annuel$rhmin....,col="blue",lwd=3) legend(x="bottomright",legend=c("Humidité maxi","Humidité mini"), cex = 0.6,lwd = 2, col = c("red","blue"),lty = c(1,1)) plot(year(moyenne.annuel$insolat..h.),moyenne.annuel$insolat..h.,type = "l",lwd=3, 22
  • 23. col="red",main="Evolution des durées n d'insolation",xlab = "Années", ylab = "Insolation en [heures]", las=2) 1960 1970 1980 1990 2000 2010 10 20 30 40 50 60 70 Evolution de l'humidité relative Années Humiditérelativeen[%] Humidité maxi Humidité mini 1960 1970 1980 1990 2000 2010 8.4 8.6 8.8 9.0 9.2 9.4 9.6 Evolution des durées d'insolation Années Insolationen[heures] Figure 15 – Evolution interannuelle de l’insolation et de l’humidité L’insolation présente une tendance à la baisse et varie entre 8.4 et 10 h en moyenne par année. L’humidité présente des faibles valeurs sur la période 1983-1990 correspondant aux années de déficit pluviométriques accentués. 2. Date de début et Date de fin de saison, nombre de jour de pluie 2.1 Date de début de saison Le critère “agronomique” fut présenté par Somé and Sivakumar (1994). Somé and Sivakumar (1994) retiennent comme condition du démarrage de la saison (date X), une quantité de 20 23
  • 24. mm de pluies recueillies en 3 jours consécutifs après le 01 avril de l’année, sans période sèche d’une durée supérieure à 7 jours dans les 30 jours qui suivent. #&&&&&&&&&&&&&&&&&&&&&&&&&&&& dates de debut de saison &&&&&&&&&&&&&&&&&&&&& #&&&&&&&&&&&&&&&&&&&&&&& dates=as.character(data[,1]) julien.day=NULL mat=NULL # initialisation pour les nombres de jours annuels mat2=NULL # initialisation pour les dates de début date.dem.deb="01-04" #date de démarrage de la recherche des dates de début for (an in 1961:2009){ annee=as.character(an) debut=paste(date.dem.deb,substr(annee, 3, 4), sep = "-") fin=paste("31-12-",substr(annee, 3, 4),sep = "") idebut=as.numeric(which(dates==debut)) ifin=as.numeric(which(dates==fin)) pluiesannee=as.numeric(data$Pluie..mm.[idebut:ifin]) nbpluie20mm=length(which(pluiesannee>=20)) nbjp=length(which(pluiesannee>=1))# nombre de jour #de pluie par an trouv=0 idate=idebut repeat { idate=idate+1 ipreced=idate-1 isuiv=idate+1 #controle de données manquantes if (is.na(data[ipreced,9])==T|is.na(data[idate,9])==T|is.na(data[isuiv,9])==T){ deb_saison<-NA_real_ break() } cumul3jr=data[ipreced,9]+data[idate,9]+data[isuiv,9] #3jrs if (cumul3jr>=20) { troisp=c(data[ipreced,9],data[idate,9],data[isuiv,9]) itroisp=c(ipreced,idate,isuiv) maxp=max(troisp,na.rm=T) imaxp=which(troisp==maxp) ideb=itroisp[imaxp] deb_saison=data[ideb,1] trouv=1 #controle des séquences sèches de plus de 7jours 24
  • 25. finp=ideb+30 pluie30jr=data[ideb:finp,1] isec=0 repeat { isec=isec+1 isecf=isec+6 donneeverif=pluie30jr[isec:isecf] test1=length(which(donneeverif<1)) if (test1==7){ trouv=0 } if (test1==7 | isec==24 ) break } } if (trouv==1) break } result=c(an,nbpluie20mm,nbjp) mat=rbind(mat,as.numeric(result)) demarrage=c(as.character(an),as.character(deb_saison)) mat2=rbind(mat2,as.character(demarrage)) } colnames(mat)=c("Année","Nombre pluies>=20mm","Nombre jours pluies sur l'année") colnames(mat2)=c("Annee","Debut_saison") mat2=as.data.frame(mat2) for(i in 1:dim(mat2)[1]){ if(is.na(mat2$Debut_saison[i])){julien.day<-rbind(julien.day,NA) next } julien.day=rbind(julien.day,julian(as.Date(paste(mat2$Annee[i], substr(mat2$Debut_saison[i],4,5),substr(mat2$Debut_saison[i],1,2),sep="-")), origin=as.Date(paste(mat2$Annee[i],"01-01",sep="-")))) } mat2=cbind(mat2,julien.day) colnames(mat2)=c("Annee","Debut_saison","jour_julien") par(mfrow=c(1,2)) plot(year(moyenne.annuel$insolat..h.),mat2$jour_julien,type = "l",lwd=3, col="blue", main="Evolution des dates n de début de saison", xlab = "Années",ylab = "Dates en [jour julien]", las=2) abline(h=mean(mat2$jour_julien,na.rm = T),col="red",lwd=2) legend(x="bottomleft",legend=c("Date de début", "Moyenne 1961-2010"), cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1)) 25
  • 26. boxplot(mat2$jour_julien,names =c("DD"),col="cyan", main="Date de début n de saison", ylab="Dates en [jour/julien)",las=2) 1960 1970 1980 1990 2000 2010 120 140 160 180 Evolution des dates de début de saison Années Datesen[jourjulien] Date de début Moyenne 1961−2010 120 140 160 180 Date de début de saison Datesen[jour/julien) Figure 16 – Date de début de saison Les dates de début présentent une très forte variation et se situent entre le 25 Avril au plutôt au 06 juillet au plus tard. En moyenne la saison démarre autour du 04 juin. Les dates sont assez dispersées et présentent une distribution symétrique (moyenne sensiblement égale à la médiane). Dans 75% des cas les dates de début sont inférieures au 20 juin. Le paysan court moins de risque de ré-semis en semant après cette date car 3 années sur 4 nous avons son occurence. Aussi tout paysan qui sème avant le 20 mai court un grand risque de ré-semis car seulement 25% des dates lui sont inférieures soit une occurence de 1 année sur 4. DD=scale(mat2$jour_julien, mean(mat2$jour_julien[1:30],na.rm = T), sd(mat2$jour_julien[1:30],na.rm = T)) par(mfrow=c(1,1)) plot(year(RRIPS),DD,col=ifelse(DD>0,"red","blue"),type = "h" ,ylab = "anomalies des dates de début",xlab = "Année", las=2,main= "variabilité des Date 26
  • 27. lines(year(RRIPS),stats::filter(DD,rep(1/5,5), side=2) ,lwd=2,col="black") legend(x="bottomleft",legend=c("Précoce","Tardive","moy-mob"), cex = 0.8,lwd = 2, col = c("blue","red","black"),lty = c(1,1,1)) 1960 1970 1980 1990 2000 2010 −2.0 −1.5 −1.0 −0.5 0.0 0.5 1.0 variabilité des Dates de début de saison Année anomaliesdesdatesdedébut Précoce Tardive moy−mob Figure 17 – Variabilité des dates de début De 1961 à 1970, les dates de début présentent une tardivité soutenue. Le reste des années est marquée par une forte variabilité. 2.2 Date de fin de saison critère SIVAKUMAR La date de la fin de la saison des pluies est le jour où, après le 01 septembre, il n’y a plus de pluie supérieure ou égale à 5 mm pendant au mois 20 jours successifs ou deux décades (Sivakumar). 27
  • 28. #################Date de fin critère Sivakumar dates=as.character(data[,1]) julien.day=NULL mat3=NULL date.dem.fin="01-09" #date de démarrage de la recherche des dates de fin #ou avec readline #date.dem=readline("saisissez la date de démarrage des calculs sous la forme 01-10 et t for (an in 1961:2009){ annee=as.character(an) jour.dem.cal=paste(date.dem.fin,substr(annee, 3, 4), sep = "-") fin=paste("31-12-",substr(annee, 3, 4),sep = "") ijour.dem.cal=as.numeric(which(dates==jour.dem.cal)) ifin=as.numeric(which(dates==fin)) #Recherche dela date de fin de saison ifin.saison=ijour.dem.cal repeat { if(any(data$Pluie..mm.[ifin.saison:(ifin.saison+19)]>=5)){ max.indice.sup.5=as.numeric(max( which(data$Pluie..mm.[ifin.saison:(ifin.saison+19)]>=5))) ifin.saison=ifin.saison+max.indice.sup.5 }else{ break } } fin.saison<-data[ifin.saison,1] findesaison=c(as.character(an),as.character(fin.saison)) mat3=rbind(mat3,as.character(findesaison)) } colnames(mat3)=c("Annee","Fin_saison") mat3=as.data.frame(mat3) ####COnversion en Jour julien############################### for(i in 1:dim(mat3)[1]){ if(is.na(mat3$Fin_saison[i])){julien.day<-rbind(julien.day,NA) next } julien.day=rbind(julien.day,julian(as.Date(paste(mat3$Annee[i], substr(mat3$Fin_saison[i],4,5),substr(mat3$Fin_saison[i],1,2),sep="-")), origin=as.Date(paste(mat3$Annee[i],"01-01",sep="-")))) } mat3=cbind(mat3,julien.day) colnames(mat3)=c("Annee","Fin_saison","jour_julien") 28
  • 29. critères PRESAO (CRA) La fin de la saison dans la zone nord unimodale a lieu quand à partir du 1ˆ{er} Septembre, un sol capable de contenir 70mm d’eau disponible est complètement puisé par une perte quotidienne d’évapotranspiration de 5mm. ##############Date de fin critère PRESAO dates=as.character(data[,1]) julien.day=NULL mat4=NULL date.dem.fin="01-09" #date de démarrage de la recherche des dates de fin #ou avec readline #date.dem=readline("saisissez la date de démarrage des calculs sous la forme 01-10 et t #Capacité de Rétention du sol en mm Cap_ret_maxi=70 #Evapotranspiration quotidienne en mm/j ETP=5 for (an in 1961:2009){ annee=as.character(an) debut=paste("01-01",substr(annee, 3, 4), sep = "-") jour.dem.cal=paste(date.dem.fin,substr(annee, 3, 4), sep = "-") fin=paste("31-12-",substr(annee, 3, 4),sep = "") idebut=as.numeric(which(dates==debut)) ijour.dem.cal=as.numeric(which(dates==jour.dem.cal)) ifin=as.numeric(which(dates==fin)) ru=0 # initilisation de la capacité de rétention du sol #au début de l'année en saison séche #détermination de la capacité de rétention du sol #é la date de démarrage de la recherche de fin for(k in idebut:ijour.dem.cal){ if(is.na(data$Pluie..mm.[k])){ next() } ru<-data$Pluie..mm.[k]+ru-ETP if(ru>Cap_ret_maxi){ ru<-Cap_ret_maxi } if(ru<0){ ru<-0 } 29
  • 30. } #fin de la détermination de ru au Jour de demarrage calcul #Recherche dela date de fin de saison ifin.saison=ijour.dem.cal repeat { ifin.saison<-ifin.saison+1 ru<-data$Pluie..mm.[ifin.saison]+ru-ETP if(ru>Cap_ret_maxi){ ru<-Cap_ret_maxi } if (ru<=0.5) break() } fin.saison<-data[ifin.saison,1] findesaison=c(as.character(an),as.character(fin.saison)) mat4=rbind(mat4,as.character(findesaison)) } colnames(mat4)=c("Annee","Fin_saison") mat4=as.data.frame(mat4) ####COnversion en Jour julien############################### for(i in 1:dim(mat3)[1]){ if(is.na(mat4$Fin_saison[i])){julien.day<-rbind(julien.day,NA) next } julien.day=rbind(julien.day,julian(as.Date(paste(mat4$Annee[i], substr(mat4$Fin_saison[i],4,5),substr(mat4$Fin_saison[i],1,2), sep="-")), origin=as.Date(paste(mat4$Annee[i],"01-01",sep="-")))) } mat4=cbind(mat4,julien.day) colnames(mat4)=c("Annee","Fin_saison","jour_julien") par(mfrow=c(1,1)) plot(year(moyenne.annuel$insolat..h.),mat4$jour_julien,type = "l",lwd=3, col="blue",main="Evolution des dates de fin de saison", xlab = "Années",ylab = "Dates en [jour julien]", las=2) points(year(moyenne.annuel$insolat..h.),mat4$jour_julien,pch=16,col="blue") #abline(h=mean(mat3$jour_julien,na.rm = T),col="red",lwd=2) lines(year(moyenne.annuel$rhmin....), mat3$jour_julien,col="red",lwd=3) points(year(moyenne.annuel$insolat..h.),mat3$jour_julien,pch=16,col="red") legend(x="topleft",legend=c("PRESAO","SIVAKUMAR"), cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1)) 30
  • 31. 1960 1970 1980 1990 2000 2010 250 260 270 280 290 300 Evolution des dates de fin de saison Années Datesen[jourjulien] PRESAO SIVAKUMAR Figure 18 – Evolution des dates de fin de saison Les dates de début varient entre le 02 septembre et 02 novembre pour les deux critères utilisés et tournent en moyenne autour du 04 octobre pour le critère de sivakumar et du 23 septembre pour le critère du CRA (PRESAO). Sur presque toute la période d’étude les dates critères sivakumar sont au delà des dates critères PRESAO. Sur presque toutes les années, les dates de début boxplot(cbind(mat3$jour_julien,mat4$jour_julien),names =c("SIVAKUM","PRESAO"),col=c("red 31
  • 32. SIVAKUM PRESAO 250 260 270 280 290 300 Date de fin de saison Datesen[jour/julien) Figure 19 – comparaison de la distribution des dates de fin selon les deux critères Les dates de fin calculées avec le critère SIVAKUMAR, dans 50% des cas dépassent 75% des dates dates de fin critère PRESAO. 1 année sur 2, les dates pour sivakumar sont inférieures au 03 octobre et celles du PRESAO sont inférieures 23 septembre. 2.3 Longueur de saison Long.sivakumar=mat3$jour_julien-mat2$jour_julien Long.presao=mat4$jour_julien-mat2$jour_julien plot(year(moyenne.annuel$insolat..h.),Long.presao,type = "l",lwd=3, col="blue", main="Evolution des longueurs de saison", xlab = "Années",ylab = "Longeur de saison en [nombre de jour ]", las=2) #abline(h=mean(mat3$jour_julien,na.rm = T),col="red",lwd=2) lines(year(moyenne.annuel$rhmin....), Long.sivakumar,col="red",lwd=3) legend(x="topleft",legend=c("PRESAO", "SIVAKUMAR"), cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1)) 32
  • 33. 1960 1970 1980 1990 2000 2010 60 80 100 120 140 160 Evolution des longueurs de saison Années Longeurdesaisonen[nombredejour] PRESAO SIVAKUMAR Figure 20 – Evolution des longueurs de saisons Le choix de la culture plus précisément son cycle doit tenir compte des longueurs des saisons et des chances que la longueur du cycle corresponde à la longueur des saisons. Ici nous présentons l’évolution des longeurs de saison pour les deux critères utilisés. Elles varient entre 60 et 165 jours pour les deux critères sur la période d’étude. A l’instar de la date de début elle est très variable. LSS=scale(Long.sivakumar, mean(Long.sivakumar[1:30],na.rm = T), sd(Long.sivakumar[1:30],na.rm = T)) LSP=scale(Long.presao, mean(Long.presao[1:30],na.rm = T), sd(Long.presao[1:30],na.rm = T)) par(mfrow=c(1,2)) y=plot(year(RRIPS),LSS,col=ifelse(LSS>0,"blue","red"),type = "h" ,ylab = "anomalies des longueurs de saison",xlab = "Année", las=2, main= "variabilité des longueurs n de saison SIVAKUMAR",lwd=3) legend(x="bottomleft",legend=c("longue","courte"), cex = 0.8,lwd = 2, col = c("blue","red"),lty = c(1,1)) 33
  • 34. y=plot(year(RRIPS),LSP,col=ifelse(LSP>0,"blue","red"),type = "h" ,ylab = "anomalies des longueurs de saison",xlab = "Année", las=2, main= "variabilité des longueurs n de saison PRESAO",lwd=3) legend(x="bottomleft",legend=c("longue","courte"), cex = 0.8,lwd = 2, col = c("blue","red"),lty = c(1,1)) 1960 1970 1980 1990 2000 2010 −1 0 1 2 variabilité des longueurs de saison SIVAKUMAR Année anomaliesdeslongueursdesaison longue courte 1960 1970 1980 1990 2000 2010 −1 0 1 2 variabilité des longueurs de saison PRESAO Année anomaliesdeslongueursdesaison longue courte Figure 21 – Variabilité des longueurs Pour les deux critères la tendances à des longeurs de saisons longues est observée les 20 dernières années. Elle est plus remarquée pour le critère PRESAO. 2.4 Nombre de jour de pluie dans la saison Il est déterminé ici les nombres de jours de pluie entre la date de début et la date de fin de saison. Ainsi, il est fait une comparaison entre les nombres de jours de pluie sur toute l’année civile pour évaluer les jours pluvieux non pris en compte par les critères agronomiques de démarrage et de fin de saison. 34
  • 35. dates=as.character(data[,1]) mat5=NULL mat2=as.data.frame(mat2) mat3=as.data.frame(mat3) for (i in 1:49){ if(is.na(mat2$Debut_saison[i])|is.na(mat3$Fin_saison[i])){ mat5=rbind(mat5,NA) next() } debutsaison=unique(as.vector(mat2[i,2])) finsaison=unique(as.vector(mat3$Fin_saison[i])) idebut=as.numeric(which(dates==debutsaison)) ifin=as.numeric(which(dates==finsaison)) pluiesaison=as.numeric(data$Pluie..mm.[idebut:ifin]) nbjp=length(which(pluiesaison>=1)) mat5=rbind(mat5,as.numeric(nbjp)) } mat5=cbind(1961:2009, mat5) plot(mat[,1],mat[,3],type = "h",lwd=3, col="blue", ylim = c(20,65),main="Nombre de jours de pluie ", xlab = "Années",ylab = "Nombre de jour [jour]", las=2) lines(mat5[,1],mat5[,2],type = "l",lwd=3, col="red") legend(x="topleft",legend=c("Nombre jour année", "Nombre jour saison"), cex = 0.6,lwd = 2, col = c("blue","red"),lty = c(1,1)) 35
  • 36. 1960 1970 1980 1990 2000 2010 20 30 40 50 60 Nombre de jours de pluie Années Nombredejour[jour] Nombre jour année Nombre jour saison Il ressort de l’observation de ce graphe, que les nombres de jours de pluie pour la saison varient entre 25 et 58 jours. pour ce qui concerne les nombes de jours annuels de pluie ils se situent entre 35 et 60jours. Les pluies en marges de la saison pluvieuse sont plus importante entre 1961 et 1980. 3. Corrélations entre les paramètres climatiques Il est étudié ici les corrélations entrent les valeurs quotidiennes des différents paramètres. data.without.Na=na.omit(data) corr=cor(data.without.Na[,-1]) cor=round(as.data.frame(corr),3) kable(cor, format = "latex", caption = "Corrélations entre les variables",booktabs = T) kable_styling(latex_options = c("scale_down")) D’une façon générale, les variables de même type présentent de fortes corrélations entre elles. Il s’agit par exemple des groupes (tmin, tmax, tmean) et (rhmin, rhmax). Il importe de souligner certaines liaisons plus ou moins fortes mais en sens inverse. c’est le cas de la température maximale et de l’humidité relative. Ainsi plus il fait chaud, moins l’air atmosphérisque présente de la vapeur d’eau. La corrélation inverse entre la température minimale et l’insolation s’explique par le fait que la température minimale est relevée à 6hTU et donc avant l’apparition des rayons solaires. La corrélation négative entre la pluie et les températures maximales s’explique par le fait que la survenance des précipations atténue les 36
  • 37. Tableau 1 – Corrélations entre les variables tmin...C. tmax...C. rhmin.... rhmax.... insolat..h. vent..m.s. tmean...C. Pluie..mm. tmin...C. 1.000 0.571 0.219 0.236 -0.082 0.273 0.896 0.050 tmax...C. 0.571 1.000 -0.458 -0.247 0.360 0.001 0.876 -0.164 rhmin.... 0.219 -0.458 1.000 0.878 -0.345 -0.001 -0.119 0.348 rhmax.... 0.236 -0.247 0.878 1.000 -0.186 -0.085 0.005 0.315 insolat..h. -0.082 0.360 -0.345 -0.186 1.000 -0.084 0.147 -0.180 vent..m.s. 0.273 0.001 -0.001 -0.085 -0.084 1.000 0.161 0.053 tmean...C. 0.896 0.876 -0.119 0.005 0.147 0.161 1.000 -0.060 Pluie..mm. 0.050 -0.164 0.348 0.315 -0.180 0.053 -0.060 1.000 températures en général. Le paradoxe avec les températures minimales pour cette station pourrait s’expliquer par le fait que la plupart des pluies surviennent en journée et donc impactent plus sur les températures maximales. Le vent et l’humidité relative corrélent en sens inverse puisque le vent est facteur d’évaporation et participe à l’assèchement des masses d’air. corrplot::corrplot(corr, method="shade", shade.col=NA,tl.col="black", tl.srt=45) −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 tm in...C . tm ax...C . rhm in....rhm ax.... insolat..h. vent..m .s. tm ean...C . Pluie..m m . tmin...C. tmax...C. rhmin.... rhmax.... insolat..h. vent..m.s. tmean...C. Pluie..mm. Figure 22 – Corrélation entre les différents paramètres 37
  • 38. 4. Zone agroclimatique et changements attendus A=paste("Hauteur moyenne à la station sur la période d'étude: ",mean(pluie.annuel,na.rm=T)) cat(A) ## Hauteur moyenne à la station sur la période d'étude: ## 631.516326530612 Au regard de la pluviométrie annuelle observée (moyenne de 631.5 mm/an) sur la station on peut conclure que cette dernière se situe dans la zone sahélo-soudanienne (voir Classification FAO, zone sahélo-soudanienne[400-600 mm]). Au regard des différentes figures analysées, on note : — Pour les températures : une tendance à la hausse en l’occurence pour les tempé- ratures minimales où elle est significative avec une hausse de 0.55°C tous les 10 ans. Cette tendance (même si elle n’est pas significative) pour les températures maximales est de 0.03°C tous les 10 ans. Aussi, il faut noter une persistance des années chaudes ces dernières décennies à la station ; — Pour les précipitations : une tendance à la hausse (non signicative) des cumuls annuels à raison d’environ 10mm tous les 10 ans. Les décennies 1970-1990 sont déficitaires avec des deficits importants pour les années 1983,1984. 1 année sur 2 les maximas annuels de pluie sont supérieurs à 60mm. — Pour les Dates de début : une très grande variabilité interannuelle est observée sur la période d’étude. — Pour les Dates de fin : A l’instar des dates de début, les dates de fin présentent aussi une forte variabilité interannuelle. — Pour les longueurs de saison : une tendance a des longueurs de saison longues pour les deux dernières décennies. © HOUNGNIBO Mandela, Kosi Tchaa, Laminou Ibrahim. 38