Я хочу построить популяционную пирамиду с метками рядом со столбиками в ggplot. Я использую position_stack(vjust=1.3)
, чтобы метки появлялись рядом с «верхом» столбцов, используя приведенный ниже код, но я не понимаю, как команда масштабирует положение меток.
library(tidyverse)
data.frame(
sex = c("F", "F", "F", "F", "F", "F", "F", "F", "M", "M", "M", "M", "M", "M", "M", "M"),
ag = c("0-9", "10-19", "20-29", "30-39", "40-49", "50-59", "60-69", "70+"),
n = c(-0.21, -0.12, -0.09, -0.03, -0.04, -0.01, 0, 0, 0.22, 0.11, 0.06, 0.04, 0.02, 0.03, 0.01, 0),
stringsAsFactors = F
) %>%
ggplot(aes(x=ag, y = n, fill=sex)) +
geom_col() +
scale_fill_brewer("",labels = c("Women", "Men"), palette = "Set1") +
coord_flip() +
geom_text(data = . %>% dplyr::filter(sex == "M"),
aes(label = n),
position=position_stack(vjust=1.3)) +
geom_text(data = . %>% dplyr::filter(sex == "F"),
aes(label = n),
position=position_stack(vjust=-0.3))
На полученном графике метки не равноудалены от верхнего края столбцов. Я хочу, чтобы метки появлялись аккуратно рядом с каждой полосой.