Comment puis-je supprimer la lettre "a" de la légende générée par ce code? Si je supprime le geom_text
, la lettre "a" n'apparaîtra pas dans la légende. Je veux garder geom_text
, bien que.
ggplot(data = iris, aes(x = Sepal.Length, y=Sepal.Width, shape = Species, colour = Species)) +
geom_point() +
geom_text(aes(label = Species))
Ensemble show.legend = FALSE
dans geom_text
:
ggplot(data = iris,
aes(x = Sepal.Length, y = Sepal.Width, colour = Species, shape = Species, label = Species)) +
geom_point() +
geom_text(show.legend = FALSE)
L'argument show_guide
a changé de nom pour show.legend
dans ggplot2 2.0.0
( voir les nouvelles de la version ).
Pré-ggplot2 2.0.0
:
Avec show_guide = FALSE
ainsi...
ggplot( data=iris, aes(x=Sepal.Length, y=Sepal.Width , colour = Species , shape = Species, label = Species ) , size=20 ) +
geom_point()+
geom_text( show_guide = F )
J'ai eu un problème similaire . La solution de Simon a fonctionné pour moi, mais une légère torsion était nécessaire. Je ne savais pas que je devais ajouter "show_guide = F" aux arguments de geom_text, plutôt que de remplacer par lui les arguments existants - ce qui est la solution de Simon spectacles. Pour un noob ggplot2 comme moi, ce n'était pas si évident. Un bon exemple aurait utilisé le code de l'OP et aurait simplement ajouté l'argument manquant comme ceci:
..
geom_text(aes(label=Species), show_guide = F) +
..
Nous pouvons utiliser guide_legend(override.aes = aes(...))
pour masquer le 'a' dans la légende.
Voici un court exemple de la façon dont vous pourriez utiliser guide_legend ()
library(ggrepel)
#> Loading required package: ggplot2
d <- mtcars[c(1:8),]
p <- ggplot(d, aes(wt, mpg)) +
geom_point() +
theme_classic(base_size = 18) +
geom_label_repel(
aes(label = rownames(d), fill = factor(cyl)),
size = 5, color = "white"
)
# Let's see what the default legend looks like.
p
# Now let's override some of the aesthetics:
p + guides(
fill = guide_legend(
title = "Legend Title",
override.aes = aes(label = "")
)
)
Créé le 2019-04-29 par le package reprex (v0.2.1)