Starając się nałożyć nową linię do istniejącej ggplot ja otrzymuję następujący błąd:Jak radzić sobie z błędem "dane klasy nieistniejącej" z ggplot2?
Error: ggplot2 doesn't know how to deal with data of class uneval
Pierwsza część mojego kodu działa prawidłowo. Poniżej znajduje się obraz "ostatnich" godzinowych danych dotyczących generacji energii wiatrowej z rynku energii elektrycznej w Środkowo-Zachodnich Stanach Zjednoczonych.
Teraz chcę nakładać dwa ostatnie dni warte uwagi w kolorze czerwonym. To powinno być łatwe, ale nie mogę zrozumieć, dlaczego dostaję błąd.
Każda pomoc będzie mile widziana.
Poniżej jest odtwarzalny przykład:
# Read in Wind data
fname <- "https://www.midwestiso.org/Library/Repository/Market%20Reports/20130510_hwd_HIST.csv"
df <- read.csv(fname, header=TRUE, sep="," , skip=7)
df <- df[1:(length(df$MKTHOUR)-5),]
# format variables
df$MWh <- as.numeric(df$MWh)
df$Datetime <- strptime(df$MKTHOUR, "%m/%d/%y %I:%M %p")
# Create some variables
df$Date <- as.Date(df$Datetime)
df$HrEnd <- df$Datetime$hour+1
# Subset recent and last data
last.obs <- range(df$Date)[2]
df.recent <- subset(df, Date %in% seq(last.obs-30, last.obs-2, by=1))
df.last <- subset(df, Date %in% seq(last.obs-2, last.obs, by=1))
# plot recent in Grey
p <- ggplot(df.recent, aes(HrEnd, MWh, group=factor(Date))) +
geom_line(color="grey") +
scale_y_continuous(labels = comma) +
scale_x_continuous(breaks = seq(1,24,1)) +
labs(y="MWh") +
labs(x="Hour Ending") +
labs(title="Hourly Wind Generation")
p
# plot last two days in Red
p <- p + geom_line(df.last, aes(HrEnd, MWh, group=factor(Date)), color="red")
p
ouch to rodzaj embarrowania !! ale nigdy więcej nie popełnię tego błędu. Dzięki Justin – MikeTP
Nie, nie! i tak, będziesz! Cieszę się, że mogłem cię skierować we właściwym kierunku, a teraz jest tutaj dla potomności. – Justin