从ggplot移除n图例

时间:2018-08-22 10:57:56

标签: r ggplot2

我正在尝试从以下图表中删除“ n”图例。我猜想它与stat的{​​{1}}部分有关,但是我不确定它显示的内容,因此不确定如何删除它。我确实想要填充图例,所以geom_bar()不是正确的选择。抱歉,如果这是重复的,但是之后  很多看起来我找不到答案,在scale_x_x上更改图例并不能解决问题。

show.legends=FALSE

enter image description here

2 个答案:

答案 0 :(得分:6)

您可以使用show.legend参数控制图例,并通过使用命名矢量进行精细控制:

  

show.legend

     

逻辑。该图层应包括在图例中吗?   NA,默认值,包括是否映射了任何美学。永远不会   包含,并且TRUE始终包含。也可以是命名逻辑   向量以精细地选择要展示的美学效果。

诀窍是要认识到图例的n部分来自于尺寸美学。

ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width,fill=Species))+
+    geom_bar(stat="sum", show.legend=c(size=FALSE))

答案 1 :(得分:2)

我会做以下

library(tidyverse)
iris %>%
    group_by(Species, Sepal.Length) %>%
    summarise(Sepal.Width = sum(Sepal.Width)) %>%
    ggplot(aes(Sepal.Length, Sepal.Width, fill = Species)) +
    geom_col()

enter image description here

说明:对每个Sepal.Width的{​​{1}}总结Species,然后作图。通常(我认为)建议将数据操作/摘要和绘图分开放置。