【问题标题】:R ggplot remove certain items from legend [duplicate]R ggplot从图例中删除某些项目[重复]
【发布时间】:2015-06-08 23:29:14
【问题描述】:

是否可以从使用 ggplot 创建的图例中删除某些项目?我有一个多面的情节,点大小为情节提供了另一个维度。由于情节是分面的,我不需要某些图例项目,因为它由分面标题解释,但图例仍然与点大小相关。

在下面的图中,我想删除“AREA”图例项,因为它已经由刻面解释,但保留解释点大小的“TOTAL_VOLUME”图例项。

这是用于生成绘图的代码:

library(data.table) # Import libraries
library(ggplot2)
library(scales)

set.seed(1234) # Set Seed

area.list <- LETTERS[seq(1:7)] # 7 Possible areas
date.list <- seq(as.Date("2014/03/01"), by="month", length=13)

# Build a random data set
data <- data.table(AREA = sample(area.list, 80, replace=TRUE),
               DATE = sample(date.list, 80, replace=TRUE),
               VOLUME = rnorm(n=80, mean=100000,sd=40000),
               NON_CONFORMING_VOLUME = rnorm(n=80, mean=30000,sd=5000))
# Summarise data by area and date
data <- data[, list(TOTAL_VOLUME=sum(VOLUME),
                TOTAL_NC_VOLUME=sum(NON_CONFORMING_VOLUME)),
         by=list(AREA, DATE)]
data$PERCENT_NC <- data$TOTAL_NC_VOLUME / data$TOTAL_VOLUME * 100

p <- ggplot(data = data, aes(x = DATE, 
                          y = PERCENT_NC,
                          colour = AREA)) +
  geom_point(aes(size = TOTAL_VOLUME)) +
  geom_line() +
  facet_grid(. ~ AREA) +
  theme(legend.position="bottom", axis.text.x=element_text(angle=90,hjust=1)) +
  ggtitle("Percent Non-Conforming by Area by Month") +
  labs(x = "Month", y = "% Non-Conforming") +
  scale_size_continuous(labels = comma)

plot(p)

我尝试将 show_guide=FALSE 添加到 geom_point() ,但这会同时删除 TOTAL_VOLUME 和 AREA。

谢谢

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    您可以通过以下方式为每个比例设置指南:

    p + guides(size = "legend", colour = "none")
    

    【讨论】:

      猜你喜欢
      • 2016-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-28
      • 2019-11-04
      • 2021-05-14
      • 2016-06-24
      • 1970-01-01
      相关资源
      最近更新 更多