#' importETPMean
#'
#' @description Fonction permettant de recuperer les temperatures moyennes a partir des donnees MODIS.
#' La raster a une resolution de 500km.
#'
#' @param zoneEtude Objet sf contenant le shape de la zoneEtude
#' @param firstDate Premiere prise en compte dans la moyenne
#' @param endDate Derniere date prise en compte dans la moyenne. Egale a la date du jour si non indique
#' @param bufferTemp Zone de prospection autour de la zone d'etude
#'
#' @return Renvoi un raster contenant les temperatures moyennees sur la periode choisie
#' @export
#'
#' @import MODISTools dplyr sf
#' @importFrom raster calc
#'
importETPMean <- function(zoneEtude, firstDate = stop("Choisir une date de depart"), endDate = format(Sys.time(), "%Y-%m-%d"), bufferTemp = 4000){
if(as.character(firstDate) == FALSE){
stop("firstdate doit etre au format character")
}
value <- NULL
zoneEtude = st_transform(zoneEtude,4326)
# Permet de trouver le centre de la zoneEtude
print("Calcul du barycentre de la zoneEtude")
centre = st_centroid(keepOutline(zoneEtude)) %>%
st_coordinates()
# Recuperation des donnees du MODIS
print("Importation des donnees du MODIS")
Subset <- mt_subset(product = "MOD16A2",
band = "ET_500m",
lon = centre[1],
lat = centre[2],
km_lr = bufferTemp/1000,
km_ab = bufferTemp/1000,
start = firstDate,
end = endDate)
# On supprime des valeurs aberrantes
SubsetPlot = Subset %>%
filter(value > -32767 | value < 32700) %>%
filter(value != 0)
# Conversion en raster puis en degrees
raster = mt_to_raster(SubsetPlot)
raster = raster/8
# Moyenne des rasters (il y a un raster par dates)
rasterMean = calc(raster, mean)
return(rasterMean)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.