简体   繁体   中英

scale_fill_discrete and scale_fill_manual - legend options confusion

I have a problem with applying two different changes on my ggplot2 object. I have a barplot with 3 groups on it. I want to:

  1. set color for each group
  2. reorder the order of legend labels

I have found the following solutions to the above problems:

  1. + scale_fill_manual(values = c("red", "green", "blue"))
  2. + scale_fill_discrete(guide = guide_legend(reverse=TRUE))

The problem is the second application ( + scale_fill_discrete(...) ) is overriding the first one:

Scale for 'fill' is already present. Adding another scale for 'fill', which will replace the existing scale.

(separately both of them work fine). How to deal with it?

You do not need to make it double, this should work:

scale_fill_manual(values = c("red", "green", "blue"), name = "My name", 
                  guide = guide_legend(reverse = TRUE))

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM