Двойная линейная диаграмма ggplot и 3 столбца

Я извлек пакетом Rfacebook некоторые данные о страницах Facebook. Я пытаюсь получить две линейные диаграммы рядом, как прикрепленное изображение (линейную диаграмму для каждого имени пользователя), где я могу отображать лайки, комментарии и публикации одновременно, как прикрепленное изображение.

FromUser  time      shares  comments    likes
User 1    17-01-18  67      5           100
User 2    16-01-18  46      13          65
User 1    16-01-18  32      25          32
User 1    15-01-18  45      36          45
User 2    14-01-18  64      52          58

Я попытался с помощью следующего кода, но я не работаю. Любое предложение?

line_chart <- ggplot(dataframe, aes(x = time)) + 
  geom_line(aes(y = shares), colour="blue") + 
  geom_line(aes(y = comments), colour = "grey") +
  geom_line(aes(y = likes), colour = "grey") +  
  ylab(label="Number of interactions") + 
  xlab("Days")

LineChart

1 ответ

Решение

Текущий график может быть легче создать, переставив ваши данные с помощью tidyr:

library(tidyr)
#use gather to make a metric column
dataframe.2 <- dataframe %>% gather(Metric, Value, -time, -FromUser)

#convert date for easy ploting
dataframe.2$time <- as.Date(dataframe.2$time , format = "%d-%m-%y")

Который дает одну запись на пользователя, время и метрику:

FromUser       time   Metric Value
User 1 2018-01-17   shares    67
User 2 2018-01-16   shares    46
User 1 2018-01-16   shares    32
User 1 2018-01-15   shares    45
User 2 2018-01-14   shares    64
User 1 2018-01-17 comments     5
User 2 2018-01-16 comments    13
User 1 2018-01-16 comments    25
User 1 2018-01-15 comments    36
User 2 2018-01-14 comments    52
User 1 2018-01-17    likes   100
User 2 2018-01-16    likes    65
User 1 2018-01-16    likes    32
User 1 2018-01-15    likes    45
User 2 2018-01-14    likes    58

Теперь добавьте в ggplot:

ggplot(data = dataframe.2, aes(x = time, y = Value)) + 
  geom_line(aes(color = Metric, group = Metric)) +facet_wrap(~FromUser) + 
  xlab("Date") + ylab("Number of interactions")

Окончательный сюжет:

Другие вопросы по тегам