如何使用ggplot去除图例

5

我有以下的 ggplot 代码:

ggplot(Wheat_by_yearContinent, aes(x = Year, y = avgWheatYield, color = ContinentName)) + 
  theme(legend.position = "none") + 
  geom_line(size = 1) + 
  expand_limits(y = 0) + 
  ggtitle("Wheat") + 
  ylab(bquote('Average Yield ( '*'ton'~ ha^-1*')'))

我尝试了几种方法来抑制图例,但似乎无法弄清楚,也没有任何作用。有人遇到过这个问题/知道如何解决吗?在上面的代码中,我包含了+ theme(legend.position = "none"),因为这是我的最后一次尝试,我还尝试了legend = FALSE,但那里也没有任何东西。


2
请收藏此网站并特别回答您的问题:有几种方法可以做到这一点 http://www.cookbook-r.com/Graphs/Legends_(ggplot2)/ - infominer
提供更多信息会更容易帮助您解决问题,例如提供一个可重现的示例。您是否尝试使用更简单的数据集,例如 mtcars (ggplot(mtcars, aes(x = mpg, y = hp, col = cyl)) + geom_point() + theme(legend.position = "none")),是否有相同的问题?您正在使用哪个版本的 R?您的软件包是否已更新?仅凭提供的信息很难帮助您解决问题。 - Oliver
1
@Oliver,谢谢你指出我所忽略的事项,我会在未来发布到这个SE页面的问题中包含它们。 - Brennan
1个回答

7

你有尝试过这些吗?

从特定的美学中删除图例:

plot + guides(colour=FALSE)

或者

移除 geom_line() 中的图例:

geom_line(aes(...), show.legend = FALSE))

geom_smooth(..., show.legend=FALSE) 中非常有效,可以消除在图例中显示的不需要的默认蓝线。 - bdemarest

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接