Je sais certes comment on peut projeter des points aléatoires sur la carte de France ; par exemple à l'aide du code suivant :
Code : Tout sélectionner
library(fakir)
library(sf)
## Carte de la France :
plot(fra_sf$geometry)
## Projeter 40 points au hasard sur la carte de France :
random.points <- st_sample(fra_sf, size = 40)
plot(st_geometry(fra_sf))
plot(random.points, pch = 20, col = "red", add = TRUE)
Mon problème est de pouvoir poser des contraintes d'altitude sur les points générés au hasard sur cette carte. Or, si j'ai bien compris (je suis absolument ignorant en carto, désolé !), la manière canonique d'obtenir l'altitude de points en R est d'abord d'avoir leurs coordonnées (lat, long), puis d'utiliser par exemple le package {elevatr} pour obtenir l'altitude correspondant à ces coordonnées à l'aide d'un service web externe. Autrement dit, puisqu'il faut déjà connaître la position des points pour connaître leur altitude, il ne semble pas possible de générer directement des points dans une gamme d'altitude donnée (par exemple, obtenir 40 points aléatoires, mais dont l'altitude est comprise entre 300 et 1000 mètres).
Connaissez-vous un moyen d'y parvenir ? (On peut certes imaginer de générer des points un par un, de les rejeter s'ils ne sont pas dans la bonne gamme d'altitude, et de continuer jusqu'à en avoir 40, mais ça ne semble ni très efficace ni forcément très malin.)
Merci !