Сделайте два графика geom_bar () на основе разных столбцов на одном графике - PullRequest
1 голос
/ 29 мая 2020

У меня есть фрейм данных, который выглядит следующим образом:

 Year     Women       Men
1 2013    145169      889190
2 2014    119064      849778
3 2015    210107     1079592
4 2016    221217     1427639
5 2017    205000     1692592
6 2018    273721     1703456
7 2019    434407     2010493

Я хочу создать geom_bar, где x - год, и каждый год имеет две полосы для числа от женщин и мужчин. Я нашел решение, в котором эта таблица должна выглядеть по-другому, но мне интересно, есть ли возможность работать с этой таблицей. Спасибо за любую помощь :)

1 Ответ

1 голос
/ 29 мая 2020

Вы можете использовать следующий код

library(tidyverse)

df %>% 
      pivot_longer(cols = -c(Year,Sl), values_to = "Value", names_to = "Name") %>% 
      ggplot(aes(x = Year, y = Value, fill = Name))+geom_col(position = "dodge")

введите описание изображения здесь

Данные

df = structure(list(Sl = 1:7, Year = 2013:2019, Women = c(145169L, 
119064L, 210107L, 221217L, 205000L, 273721L, 434407L), Men = c(889190L, 
849778L, 1079592L, 1427639L, 1692592L, 1703456L, 2010493L)), class = "data.frame", row.names = c(NA, 
-7L))
...