我希望通過獨特的顏色或形狀突出顯示時間序列中高於或低於特定值的分段。在示例數據中,我將死亡時間序列分解爲其組成部分。我的目標是突出顯示當趨勢組分的死亡率低於35(1997年至2000年之間的深度)以及剩餘組分高於100(高峯)時的細分市場。我試圖使用註釋,但是這並沒有產生我想要的。如何在ggplot2圖中突出顯示時間序列項目
#Load library and obtain data
library(gamair)
library(tsModel)
library(ggplot2)
library(reshape2)
data<-data(chicago)
## create variables, decompose TS
chicago$date<-seq(from=as.Date("1987-01-01"), to=as.Date("2000-12-31"),length=5114)
data<- chicago[,c("date","death")]
mort <- tsdecomp(data$death, c(1, 2, 15, 5114))
## Convert matrix to df, rename, melt
df<-as.data.frame(mort)
names(df)[1] <- "Trend"
names(df)[2] <- "Seasonal"
names(df)[3] <- "Residual"
df$date<-seq(as.Date("1987-01-01"), as.Date("2000-12-31"), "day")
meltdf <- melt(df,id="date")
## Plot
ggplot(meltdf,aes(x=date,y=value,colour=variable,group=variable)) + geom_line() +
theme_bw() +
ylab("") + xlab("") +
facet_grid(variable ~ . , scales = "free") +
theme(legend.position = "none")
annotate("rect", xmin=1995-01-01,xmax=1996-01-01,ymin= 10, ymax=300, alpha = .2,fill="blue")
你說:「我試圖使用註釋,但是這並沒有產生我想要的。」結果如何與你想要的不同。你說你想突出獨特的顏色或形狀的部分,但你有這裏的線條,他們已經是不同的顏色。你想在中線改變顏色嗎?這裏的期望輸出到底是什麼? – MrFlick 2014-09-22 16:32:00
@MrFlick我的願望是突出第一個情節中的深度和第三個中的秒殺。註釋給出了錯誤信息。 – Meso 2014-09-22 16:40:20