【发布时间】:2019-04-04 20:11:39
【问题描述】:
在ggplot2 中,如何使填充美学的图例标签与实际用作填充美学的变量不同?我想从下图中看到的是反映 name 变量的图例标签。我知道我可以将name 本身用作填充美学;但是,在以下示例中,使用 id 列作为矢量名称来设置颜色矢量 storm_cols(用于 ggplot2::scale_fill_manual)比键入每个 name 更方便。
library(dplyr)
library(ggplot2)
dat <-
storms %>%
filter(year >= 2015) %>%
group_by(name, year) %>%
summarize(avg_wind = mean(wind)) %>%
ungroup() %>%
mutate(id = as.character(row_number())) %>%
slice(1:4)
storm_cols <- c("1" = "red", "2" = "blue", "3" = "green", "4" = "yellow")
dat %>%
ggplot(aes(id, avg_wind, fill = id)) +
geom_col() +
scale_fill_manual(values = storm_cols)
【问题讨论】:
-
我认为您正在寻找
override.aes... 在 SO 或其他地方搜索,看看您想出了什么?