簡體   English   中英

如何在圖例中添加變量而不將其包含在圖表中?

[英]How do I add a variable to the legend without including it in the graph?

我想在不將其添加到圖中的情況下為圖例添加值。

library(tidyverse)

gear_color <- c('black', "blue", "orange")
names(gear_color) <- c('3', '4', '5')

mtcars %>% 
  mutate(gear = factor(gear),
         vs = factor(vs)) %>% 
  filter(gear != 4) %>% 
  ggplot(aes(vs, fill = gear)) +
  geom_bar() +
  facet_wrap(~gear) +
  scale_fill_manual(values = gear_color)

add_to_ggplot_legend

如何將Gear 4添加到圖例而不將其添加到圖中?

scale_fill_manual可以作為參數drop?scale_fill_manual

... - 傳遞給discrete_scale的參數

drop - 量表中是否應省略未使用的因子水平? 默認值TRUE使用數據中出現的級別; FALSE使用因子中的所有級別。

所以,我們可以在最后一行添加drop = FALSE

... +
    scale_fill_manual(values = gear_color, drop = FALSE)

正如評論中提到的@ eipi10,可以通過facet_wrap include drop = FALSE類似地添加gear = 4的空面

- 輸出

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM