7

を使用して月次データをアニメーション化しようとしてい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: ")、この問題を回避するためだけに無関係なテキストを追加したくありません (「Timeperiod:」を追加することは、今のところ行ったことです)。

のヘルプを調べましたがthemeggplot2この問題に対処できるように見えるものは何もありません。

4

1 に答える 1