如何为这个折线图制作动画

How to animate this line graph

我有这个折线图 我使用 ggplot

创建了这个图 p

用于创建情节的代码如下

p <- ggplot(teleco,aes(x = tenure, color = Churn))+ geom_freqpoly(size=2)+theme_minimal()

但是我想知道如何最好地制作动画。我希望线条逐渐填充。但是我已经尝试过这个但它不起作用,因为我相信我没有时间。

p + transition_reveal(tenure)

当我 运行 这段代码时,它是这样通过的。让它动画化的最佳方法是让线条像在静态图中一样填充?

我的猜测(很难用 MRE 肯定地说)是不需要的行为来自使用 geom_polygon.

您可以尝试手动对数据进行分组,然后使用 geom_line。像

teleco %>%
  group_by(tenure, Churn) %>%
  summarise(count = n(), .groups = 'drop') %>%
  ggplot(aes(tenure, count, col = Churn)) +
    geom_line(size = 2)

这是一个可重现的工作示例,显示了 x 轴上的绘图线条。我建议尝试 geom_line 而不是 geom_freqpoly 让你的例子工作。

library(datasets)
library(dplyr)
library(ggplot2)
library(gganimate)


aq <- datasets::airquality

ggplot(data = aq, aes(Day, Ozone, col = as.factor(Month))) +
  geom_line(size = 2) +
  transition_reveal(Day)