Bonjour tout le monde,
Je suis nouveau sur le forum et débutant en programmation R (R Studio pour être plus précis).
Je tente de réaliser une série de graphiques assez simples de ce type (cf ci-dessous), représentant le profil 2D d’une plage (du haut de la plage vers le bas).
Mes données sont d’une simplicité redoutable : x = longueur du profil en m ; y = altitude du profil en m :
Pièce jointe 173184
Exemple :
distance altitude
1 0 8.45
2 1 8.54
3 2 8.19
4 3 8.05
5 4 7.26
6 5 7.16
...
Les réaliser un par un ne me pose pas problème, j’utilise le package "openair":
Seulement, j’ai 100 sites à traiter ! J’aimerais donc créer une boucle qui pioche chacun de mes fichiers « .txt » contenus dans un même dossier, afin de m’éviter de faire tous les graphs un par un.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 beach <- read.table("C:/Users/Blaise/Documents/THESE/dossier_R/2014_article_nord_bzh/profils/profil_Poulou_Aot.txt", header=TRUE, sep="\t", dec=".") names(beach) <- c("distance", "altitude") plot((beach), type="l", col="red", xlab="distance (m)", ylab="altitude (m)")
Pour cela, j’utilise la méthodo décrite dans « R pour les débutants » (Paradis, 2005, p72) …
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 species <- c("swallow", "wren", "dunnock") file <- c("Swal.dat" , "Wren.dat", "Dunn.dat") for(i in 1:length(species)) { data <- read.table(file[i]) plot(data$V1, data$V2, type="l") title(species[i]) }
…que j’adapte à mes données:
J’obtiens ce message d’erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 beaches <- c("poulou", "prat", "porsguen") file <- c("profil_poulou_aot.txt", "profil_prat_leach_kerros.txt", "profil_porsguen.txt") for(i in 1:length(beaches)){ data <-read.table(file[i]) plot(distance, altitude, type="l") title(beaches[i]) }
Error in plot(x, y, type = "l") : object 'x' not found
Pourtant j'ai un "x" et un "y" défini dans chacun de mes fichiers...
Si quelqu'un pouvait m'aider. Par avance merci.
Manu
Partager