【发布时间】:2019-01-05 06:46:48
【问题描述】:
我正在尝试随着时间的推移为堆积条形图制作动画。特别是,我希望每个堆栈首先在给定年份建立,然后过渡到下一年。另外,我想确保过去的酒吧是可见的。以下代码一次绘制每个条形图并过渡到下一年,同时使前几年不可见。有没有办法解决这个问题?
library(tidyr)
library(ggplot2)
library(gganimate)
library(dplyr)
df <- data.frame(stringsAsFactors=FALSE,
Year = c("2010", "2011", "2012"),
LabelOne = c(1000, 1500, 2000),
LabelTwo = c(50, 100, 150),
LabelThree = c(20, 30, 40)
)
df_long <- gather(df, lbs, Value, LabelOne:LabelThree, -Year)
head(df_long)
pp <- ggplot(df_long, aes(Year, Value)) +
geom_bar(stat = "identity", aes(fill = lbs)) +
transition_states(Year,
transition_length = 4, state_length = 2) +
ease_aes('cubic-in-out')
animate(pp, nframes = 300, fps = 50, width = 400, height = 550)
【问题讨论】: