1
良いタイトルを変更する方法:Rとgganimate:SOコミュニティ、 私は次のコードスニペットを持って朝
library(animation)
library(dplyr)
library(gganimate)
library(ggplot2)
someData = data.frame(years = seq(-5000, 1000, by = 100)) %>%
mutate(values = sample(1:20, length(years), replace = TRUE),
label = ifelse(years < 0, paste0(abs(years), ' B.C.E.'), years))
chart = ggplot(someData) +
geom_line(aes(x = years, y = values, frame = years, cumulative = TRUE)) +
ggtitle('Year: ')
gganimate(chart, interval = .2)
この方法で、年は、プロット(数値的に注文した)のタイトルに表示されます。 label
の値を、データフレームに表示されているのと同じ順序で配置する方法はありますか?
私の最初の試みは、geom_line
の美学にframe = label
を使用することでしたが、ラベルはアルファベット順に表示されました。だから、通じ注文私はレベルを変更しようとしました:
someData$label = factor(someData$label, levels = someData$label, order = TRUE)
をしかし、これは私に次のエラーを与えた:
Error in frame_vec == f : comparison of these types is not implemented
In addition: Warning message:
In FUN(X[[i]], ...) :
Incompatible methods ("Ops.ordered", "Ops.factor") for "=="
任意の助けも、感謝をいただければ幸いです。
ありがとう@mtoto。残念ながら、あなたの修正は私には役に立たない。まず、 'gg_animate(chart、title_frame =〜someData $ label [。])'のようなコードを書かなければなりません: 'エラー:フレームタイトルを作成できませんでした。次に、最初のフレーム(5000B.E.)の正しいラベルを貼り付けます。0ラベル(タイトルには表示されていません)まで変更されず、そのまま「NA」と表示されます。また、 'frame'値にテキスト(例えば 'Years:')を前置すると、' ggtitle'や 'label'命令に問題があります。最終的に無視します。 – LuPi
上記の問題は、次のような警告に関係していますか? 'geom_path:各グループは1つの観測のみで構成されています。あなたはグループの美意識を調整する必要がありますか?ありがとうございます – LuPi
アップデートを参照してください、これは動作するはずです – mtoto