web-dev-qa-db-fra.com

ggplot ne fonctionne pas s'il se trouve dans une boucle for alors qu'il fonctionne en dehors de celle-ci

J'utilise une simple fonction ggplot qui fonctionne très bien en dehors d'une boucle mais pas à l'intérieur même si la valeur itérative n'interfère pas avec la fonction ggplot. Pourquoi est-ce?

Voici mon code

x=1:7
y=1:7
df = data.frame(x=x,y=y)
ggplot(df,aes(x,y))+geom_point()

Ça marche ! Mais si le ggplot est dans une boucle for ...

for (i in 1:5) {
   ggplot(df,aes(x,y))+geom_point()
}

ça ne marche plus, qu'est-ce qui me manque?

97
Remi.b

Lorsque vous êtes dans une boucle for, vous devez explicitement print votre objet ggplot résultant:

for (i in 1:5) { 
    print(ggplot(df,aes(x,y))+geom_point()) 
}
187
juba