【发布时间】:2017-08-23 05:52:03
【问题描述】:
我正在尝试使用 gganimate 为一些月度数据制作动画。这些图工作得很好,除了下降(低于基线的字母,即 g、j、p、q 和 y)的存在改变了标题占用的空间量。反过来,这会稍微移动标题的基线,这会减损动画效果。也就是说,当标题中有降序时,标题会明显“跳跃”一点。
一个例子:
myDF <-
data.frame(
Date = seq(as.Date("2015-01-15")
, as.Date("2015-12-15")
, "1 month")
, x = 1:12
, y = 1:12
)
myDF$frame <-
factor(format(myDF$Date, "%Y-%b")
, levels = paste0("2015-", month.abb))
toAnimate <-
ggplot(
myDF
, aes(x = x
, y = y
, frame = frame)
) +
geom_point() +
theme_gray()
gganimate::gganimate(toAnimate)
使用旧版本的gganimate 问题更加明显(并且不需要包含年份来演示),因为它移动了情节而不是标题:
gganimate::gg_animate(toAnimate)
我可以通过使用所有大写字母(没有下降)来“解决”这个问题,但我并不特别喜欢所有大写字母的外观(尤其是作为实际用例的较大标题的一部分)。我还可以在框架标题前面加上已经有下降器的东西,例如ggtitle("Timeperiod: ") 虽然我宁愿不添加不相关的文本来解决这个问题(添加“时间段:”是我现在所使用的)。
我查看了ggplot2 中的theme 帮助,但没有看到任何可以解决此问题的内容。
【问题讨论】:
-
您尝试过更新 gganimate 吗?最新版本已将功能
gg_animate替换为gganimate。我无法用较新的版本重现下降问题。 -
谢谢@aosmith。我刚刚更新,问题现在更加微妙(到了可能不是问题的地步)。但是,更新现在似乎导致标题的基线移动(这比情节区域的变化要好,但仍然不理想)。当标题中有月份的线索时,问题就不那么微妙了,所以我稍微调整了情节(包括年份)以使其更容易看到。