2014-12-10 4 views
0

Я хочу, чтобы нарисовать столбчатую диаграмму:R: ggplot линейчатого график легенда перевернутого

df1 <- data.frame(sex  = factor(c("Female","Female","Male","Male")), 
       time  = factor(c("Lunch","Dinner","Lunch","Dinner"), levels=c("Lunch","Dinner")), 
       total_bill = c(13.53, 16.81, 16.24, 17.42)) 
# Stacked bar graph -- this is not what I want 
ggplot(data=df1, aes(x=time, y=total_bill, fill=sex)) + geom_bar(stat="identity") 

Который, как представляется: enter image description here

Я хочу, чтобы секс легенды о праве на переписку с порядок стека слева, т. е. красный снизу и синий сверху, как я могу это сделать?

+0

я нашел большое количество предыдущих вопросов с использованием поисковых терминов: '[r] geom_bar order legend'. Если вы действительно сделали некоторые поиски и просмотрели кандидатов, то вам следует описать, как они не смогли ответить на ваш вопрос. –

ответ

3

Вы также можете добавить любой из них (они эквивалентны):

guides(fill = guide_legend(reverse=TRUE)) 
scale_fill_discrete(guide = guide_legend(reverse=TRUE)) 

Из Cookbook for R Graphics

3

Попробуйте это:

ggplot(data=df1, aes(x=time, y=total_bill, fill=sex)) + 
geom_bar(stat="identity") + 
scale_fill_discrete(breaks=c("Male","Female")) 

Работал для меня

Смежные вопросы