scale_fill_identity和行顺序

问题描述 投票:1回答:1

使用scale_fill_identity时是否可以保持行顺序?以下代码中的颜色与图表中的颜色不匹配:

library(ggplot2)

df <- data.frame(x = c("x1", "x1", "x1", 
                       "x2", "x2", "x2", 
                       "x3", "x3", "x3"),
                fill = c("red", "blue", "green", 
                         "green", "red", "green",
                         "blue", "red", "blue"))

ggplot(df, aes(x = x, y = 1)) +
  geom_bar(aes(fill = fill), stat = 'identity', colour = 'black') +
  scale_fill_identity()

输出中的颜色按字母顺序分组在一起(蓝色始终在图形的顶部,然后是绿色,然后是红色),而不是颜色与df中的行顺序相同:] >

Incorrect colour orders in bars 2 & 3

这是我尝试使其外观:

correct order

使用scale_fill_identity时是否可以保持行顺序?以下代码中的颜色与图表中的颜色不匹配:library(ggplot2)df

r ggplot2
1个回答
1
投票

有点怪异,但是您可以不使用aes就能调出颜色矢量

热门问题
推荐问题
最新问题