Bonjour,

J'ai crée un script R qui génère des graohiques à partir d'un fichier texte et qui les enregistre dans un fichier pdf.

Dans ce même fichier texte j'ai des valeurs sur la dernière ligne que je voudrais ajouter en texte sur chaque graphique (1 valeur par graphique). Cette valeur n'a pas besoin d'être placée à un endroit spécifique sur le graphique.

Le problème c'est qu'en utilisant la fonction "text()", cela ne génère que la première valeur (0,02622) sur le premier graphique, les autres graphiques ne bougent pas et les valeurs n'y sont pas ajoutées.

J'ai également essayé la fonction "textplot()", mais cela ne génère qu'un tableau des données à la fin du fichier pdf et ce n'est aps ce que je veux.

Voici comment le fichier est structuré:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Statut	Verrucomicrobia	Cyanobacteria	Spirochaetes	Thermotogae	Acidobacteria	Candidatus Cloacamonas	Nitrospirae	Gemmatimonadetes	Candidatus Poribacteria
NR 1	2,259040403	0,147021403	0,14843507	0,073510701	0,035341683	0,015550341	0,009895671	0,002827335	0
NR 1	0,419200898	0,110414522	0,110414522	0,063628708	0,029942921	0,013100028	0,009357163	0,005614298	0
NR 1	3,932192894	0,131589132	0,116108058	0,061924298	0,034832417	0,015481074	0,010320716	0,005160358	0
NR 1	2,063508255	0,135527025	0,09472319	0,049547515	0,029145597	0,011658239	0,008743679	0,00437184	0
NR 1	1,984256539	0,139659738	0,112453296	0,054412885	0,038089019	0,010882577	0,01269634	0,001813763	0,001813763
NR 1	0,119263218	0,181103406	0,134723265	0,08171739	0,03533725	0,011042891	0,008834312	0,008834312	0
NR 1	1,360744266	0,17911565	0,133668395	0,088221141	0,05079399	0,01336684	0,024060311	0,008020104	0
NR 11	0,90891953	0,092911774	0,076753205	0,025584402	0,047129161	0,002693095	0,008079285	0,002693095	0,002693095
NR 11	0,135577729	0,105110823	0,082260644	0,045700358	0,039606977	0,003046691	0,007616726	0	0,003046691
NR 11	0,138067061	0,107722652	0,080412684	0,047033834	0,074343802	0,012137764	0,010620543	0,00151722	0,003034441
NR 11	0,365428105	0,091357026	0,083868745	0,03145078	0,046427341	0,005990625	0,002995312	0,002995312	0,002995312
NR 11	0,118776851	0,118776851	0,078342178	0,035380339	0,045489007	0,002527167	0,003790751	0,002527167	0,002527167
NR 11	0,255131625	0,110170474	0,08311106	0,038656307	0,048320383	0,003865631	0,005798446	0,001932815	0,003865631
NR 11	0,258947068	0,121437246	0,082148725	0,035716837	0,044646046	0,003571684	0,001785842	0	0,003571684
pvalue	0,02622	0,002331	0,0005828	0,0005828	0,01748	0,004079	0,01107	0,005160358	0,001414
Et voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
#Importation des données
Dataset <- 
  read.table("D:/Users/Pascal/Documents/THESE/METAGENOMIQUE/Analyses/Differential_analysis/NR_s-1_s+11/Phylum/Phylum.txt",
             header=TRUE, sep="\t", na.strings="NA", dec=",", strip.white=TRUE)
 
# Création d'un fichier pdf qui va contenir l'ensemble des graphiques
pdf("file.pdf",width=7,height=7)
 
#Implémentation d'une boucle permettant d'obtenir les boxplots
i=2
while(i<=length(Dataset)){
 
  nomcol=colnames(Dataset)
  espece_i=subset(subset(Dataset[1:14,]), select = c(nomcol[i]))
  b=subset(Dataset[1:14,], select = c(nomcol[1]))
  statut=factor(b[,1])
 
  graph<-boxplot(espece_i[,1]~statut, data=Dataset, id.method="n", col=c("green3"),main=nomcol[i], ylab="%", xlab="", las=1)
 
#Insertion du texte sur les boxplots
  j=2
  espece_j=subset(Dataset[15,], select = c(nomcol[i]))
  text(2,3,espece_j[1,],cex=0.5)
  j=j+1
 
 
  i=i+1
 
}
 
#On ferme toutes les instances graphiques en cours
graphics.off()
Quelqu'un aurait-il une idée sur la manière d'écrire le code afin d'avoir une valeur sur chaque graphique?

En vous remerciant de votre aide,

Cordialement,