En utilisant ggplot2
, j'essaye de colorer un ensemble spécifique de barres en utilisant 2 couleurs différentes, selon leurs catégories. Dans l'intrigue ci-dessous, j'ai des colonnes sur une certaine valeur remplie en rouge, mais en raison de ma méthode, il exclut leurs «colonnes partenaires» (les cols sur le dessus) de la coloration, quand je voudrais qu'ils soient remplis de bleu .Comment mettre en surbrillance des barres spécifiques par catégorie dans ggplot 2?
Si je change les valeurs en scale_fill_manual()
alors cela ne fait rien car l'expression 'fill' donnera la priorité à la coloration des catégories 'TRUE' et 'FALSE'.
Comment puis-je modifier mon code de sorte que les barres qui accompagnent les barres rouges remplies soient colorées en bleu?
Mon tracé actuel:
Mon code:
pop %>%
group_by(age_range, sex) %>%
summarize(population = sum(population)) %>%
mutate(prop = population/sum(population)) %>%
ggplot() +
geom_col(aes(x = age_range, y = prop, color = sex,
fill = (prop >= .504 & sex == 'female' & age_range != '75 - 79'),
width = .85),
position = 'dodge') +
scale_fill_manual(values = c('Grey60', 'Grey60', 'Blue', 'Red')) +
scale_color_manual(values = c('Red', 'Blue')) +
geom_text(aes(x = age_range, y = prop, fill = sex, label = percent(prop)),
position = position_dodge(width = .9),
vjust = .358, hjust = 1.1,size = 4, color = 'White') +
scale_y_continuous(limits = c(0, 1), expand = c(0,0)) +
geom_hline(yintercept = .504, color = 'Grey', alpha = .7) +
coord_flip()
Hey, merci pour l'aide! Votre réponse est exactement ce dont j'avais besoin! –