Ajout d'une ligne de tendance simple lm à un boxplot ggplot

Lors de l'ajout d'un modèle linéaire, la ligne de tendance à une boîte à moustaches en utilisant la norme de R graphique j'utilise:

boxplot(iris[,2]~iris[,1],col="LightBlue",main="Quartile1 (Rare)")
modelQ1<-lm(iris[,2]~iris[,1])
abline(modelQ1,lwd=2)

Cependant, lors de l'utilisation de cette ggplot2:

a <- ggplot(iris,aes(factor(iris[,1]),iris[,2]))
a + geom_boxplot() +
geom_smooth(method = "lm", se=FALSE, color="black", formula=iris[,2]~iris[,1])

J'obtiens l'erreur suivante:

geom_smooth: Only one unique x value each group.Maybe you want aes(group = 1)?

Et la ligne n'apparaît pas sur mon terrain.

Les modèles utilisés dans ces deux scénarios sont identiques. Si quelqu'un pouvait point où je vais mal, ce serait génial.

EDIT: Utilisé l'iris jeu de données comme un exemple.

source d'informationauteur JPD