Vidéo à partir de cartes du package leaflet [package animation]

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Kyrian MEDJKAL
Messages : 6
Enregistré le : 02 Nov 2016, 09:19

Vidéo à partir de cartes du package leaflet [package animation]

Messagepar Kyrian MEDJKAL » 22 Nov 2016, 10:14

Bonjour à tous,

Cette fois-ci c'est un problème au niveau de l'animation d'images en vidéo qui m'amène.
Je vous écris mon code et explique mon problème:

Code : Tout sélectionner

library(leaflet)
library(animation)

mypath<-"/home/medjkalk/R/Data/Données SOL/"   # Mon chemin

capteur_prog <- read.csv(paste0(mypath,"capteurs_programme.csv"), header=T, sep=";")    # Mon fichier data (une colonne latitude, longitude, paramètre et Day)

pal <- colorQuantile("YlGn", NULL, n = 5)        # On créé la palette de couleurs pour la carte de chaleur qui viendra après avec leaflet

vecDay<-unique(capteur_prog[,"Day"]) # Création vecteur contenant les différentes journées (13 en tout)

saveVideo({
 
  for (i in 1:length(vecDay)){    # Donc pour les 13jours
    nam <- paste ("m",i,sep=".")       # On crée un objet m
    x <- assign(nam, subset(capteur_prog, Day==i))       # On assigne à cet objet m un data frame du jour "i", que l'on met dans x
   carte <- leaflet(x) %>% addTiles() %>% setView(1.521451,47.883304, zoom=17) %>%       addCircles(radius=4,col="red", fillColor = ~pal(param),fillOpacity = 1, weight=1) %>% addProviderTiles("Esri.WorldImagery") %>% addLegend("topright", pal = pal, values = ~param,
title = "param aléatoire", labFormat = labelFormat(prefix = "$"),opacity = 1) # On créé une carte avec les données de x, et donc de m, pour chaque "i"

 print(carte)    # On affiche la carte dans le viewer de R
 
  }
  ani.options(interval = 2,ani.dev="png",ani.height=480)
  },  video.name = ("animation.mp4"),other.opts = paste0("-y -r ",length(vecDay)+2," -i Rplot%d.png -dframes ",length(vecDay)+2," -r ",length(vecDay)+2))


En gros dans mon dataset il y a 13j et pour chaque jour je créé un carte leaflet (de type carte de chaleur) que j'affiche. Je veux ensuite récupérer chacune de ces cartes pour les mettre "bout à bout" et faire une vidéo où on verra l'évolution des paramètres qui m’intéressent en fonction des jours qui passent.

Une fois le code lancé, voici ce que R m'affiche.

"[image2 @ 0x31bdd60] Could find no file with path 'Rplot%d.png' and index in the range 0-4
Rplot%d.png: No such file or directory"

J'ai cherché un peu et il semblerait que cela ait un rapport avec ffmpeg, mais je ne saisis pas très bien lequel.

Merci d'avoir pris le temps de lire mon pavé :)
Bonne journée à tous !


Kyrian

Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité