Skimming through the options of gganimate
that can be set when gg_animate()
is called to render the animated sequence, it seems that there is no option to change the frame title so to make it clearer to the observer of what is the parameter that the frame is based on.
In other words, suppose that frame = year
in a layer: how do I make the frame's title be year: ####
where #### is the year of the current frame? Am I missing something or is it a limitation of the gganimate
library?
How would you achieve the same result by a workaround?
Thanks for your advice.
Update for new gganimate
API
gganimate
has been redesigned with a new API. The frame title can now be animated with the code below. state_length
and transition_length
set the relative amount of time spent in a given "state" (meaning a given value of cyl
here) and transitioning between states:
p = ggplot(mtcars, aes(wt, mpg)) +
geom_point() +
transition_states(cyl, transition_length=1, state_length=30) +
labs(title = 'Cylinders: {closest_state}')
animate(p, nframes=40)
gganimate
can be installed from github
by running devtools::install_github('thomasp85/gganimate')
Original Answer
The frame's subset value is appended to any pre-existing title. You can therefore add a title with explanatory text. For example:
library(gganimate)
p = ggplot(mtcars, aes(wt, mpg, frame=cyl)) + geom_point() +
ggtitle("Cylinders: ")
gg_animate(p)
As you can see in the GIF below, the prefix "Cylinders: " is now added to the title before the value of cyl
: