ggplot2:更改其中一个图例元素

时间:2017-06-20 05:42:55

标签: r ggplot2

我想更改一个图例元素的背景颜色,但不更改其余元素。例如,使用内置的R数据集ToothGrowth

ggplot(ToothGrowth, aes(x=dose,y=len,colour=supp)) +
  geom_point()

我不想改变点本身的颜色,而是想将图例中框的背景颜色从灰色更改为另一种颜色,仅适用于其中一个图例元素。例如,更改VC但不是OJ的背景。

enter image description here

1 个答案:

答案 0 :(得分:1)

这是一种黑客行为,因为您使用{magick}包但它提供了所需的输出:

library(ggplot2)
library(magick)

fig <- image_graph(width = 1000, height = 500, res = 96)
ggplot(ToothGrowth, aes(x=dose,y=len,colour=supp)) +
  geom_point()
dev.off()

fig %>% 
  image_fill("lightblue", point = "+950+220", fuzz = 5)

image_fill()相当于MSPaint中的油漆桶

enter image description here