R を使用して日付を ggplot グラフ (グラフ データの基になる) に追加することは可能ですか? 私は 1 週間にわたって最も毎日のデータを選択するコードを持っており、これはその後プロットされます。データフレームの例 (以前の回答から) を以下に示します。
set.seed(1234)
df <- data.frame(Date=seq(as.POSIXct("05:00", format="%H:%M"),
as.POSIXct("23:00", format="%H:%M"), by="hours"))
df$Counts <- sample(19)
df <- df[-c(4,7,17,18),]
# generate the groups automatically and plot
idx <- c(1, diff(df$Date))
i2 <- c(1,which(idx != 1), nrow(df)+1)
df$grp <- rep(1:length(diff(i2)), diff(i2))
g <- ggplot(df, aes(x=Date, y=Counts)) + geom_line(aes(group = grp)) +
geom_point()
g
次のコードを使用して、R に私のデータがどの曜日であるかを理解させることができることを知っています。
d <- as.Date("19/02/2013","%d/%m/%Y")
format(d, "%A, %b %d, %Y")
しかし、これを機能させるには、明らかに日付を手動で入力する必要があります。
R にデータフレームを読み取らせ、データの基になっている曜日 (1 日のみ) を計算させ、これを凡例としてグラフの右上隅に追加することは可能ですか? 形式に曜日と日付の両方を含めることが理想的です (例: 2013 年 2 月 19 日、火曜日)。
編集
グラフに日付をテキストとして追加したい。これに geom_text を使用できますか? これは現時点では機能していませんが、これまでのところ私は持っています:
g + geom_text(aes(x=as.POSIXct("18:00:00", format="%H:%M:%S"), y=1500), label=date_format("%A, %b %d, %Y")", size=2)
誰が私が間違っているのか教えてもらえますか?