У меня есть цикл for для создания серии графиков, но я получаю ошибку, отмеченную выше («Эстетика должна иметь длину 1 или такую же, как data (1): x, y, color»). Когда я запускаю код без цикла, он работает правильно.
tmp.df <- melt(data,
id.vars = c("Period", "source", "Bsl_Cat", "scenario"),
measure.vars = c("tot.loss", "freq"),
na.rm = TRUE)
for(i in seq_along(UoM)) {
ggplot() +
geom_line(data = subset(tmp.df,
source == source1 &
scenario == scenario &
tmp.df$Bsl_Cat == "CPBP" &
variable == "freq"),
aes(y = value, x = Period, color = source1)) +
geom_line(data = subset(tmp.df,
source == source2 &
scenario == scenario &
tmp.df$Bsl_Cat == "CPBP" &
variable == "freq"),
aes(y = value, x = Period, color = source2)) +
labs(x="Date", y = "Frequency per Quarter") +
scale_color_manual(labels = c("USAA", "ABA"), values = mycolors2) +
ggtitle(paste(UoM[i])) +
theme(plot.title = element_text(face = "plain")) +
theme(legend.direction = "horizontal",
legend.position = "bottom",
legend.title = element_blank())
}
Любые предложения будут с благодарностью!