我有这样的数据集:
a <- letters[1:10]
b <- c(4.04,5.12,9.69,8.77,8.39,5.77,5.62,1.85,4.58,5.00)
c <- c(14.05,5.71,11.11,9.77,9.06,7.33,6.24,2.28,7.33,5.17)
d <- c("e","f","c","d","a","e","e","b","f","b")
df <-data.frame(a,b,c,d)
我制作了这个情节:
ggplot(data = df, aes(x= b, y= c, shape=d, color = d)) +
geom_point() +
geom_text(aes(label=a), size=3.2, hjust = 0.5, vjust = 1.5)
我得到了这个:
如何删除图例中每个形状后面的字母“a”?
答案 0 :(得分:2)
这里的问题是geom_text
图层正在添加到图例中。以下是一些示例,向您展示正在发生的事情:
如果您只是使用ggplot
图层调用geom_point
,则可以获得正确的图例:
p <- ggplot(data = df, aes(x = b, y = c, shape = d, color = d))
p + geom_point()
尝试仅使用geom_text
图层调用它,您会看到图例使用'a'
p + geom_text(aes(label = a), size = 3.2, hjust = 0.5, vjust = 1.5)
通过show.legend = FALSE
以阻止geom_text
图层添加到图例:
p + geom_point() +
geom_text(aes(label = a), size = 3.2, hjust = 0.5, vjust = 1.5, show.legend = FALSE)