我在 R 中使用 ggplot2 库绘制图表时遇到问题。
我有一个“日期”变量,其中包含 3 个“品牌”品牌中每个品牌的披露值“评级”的日期。问题是,一场活动结束后,市场就只剩下两个品牌了。因此,我想在同一图中分别绘制此事件之前和之后的线条。是否可以?如果我使用平滑函数按原样绘制所有内容,则图表没有任何意义,因此我必须在两个阶段之间留下迄今为止的时间,在下面的日期中介于“16/09/2012”和“18/09/2012”之间或第五和第六元素之间。
x <- c("1jan1960", "2jan1960", "31mar1960", "30jul1960")
as.Date(x, "%d%b%Y")
x <- c("10/09/2012", "12/09/2012", "11/09/2012")
as.Date(x, "%d/%m/%Y")
x <- c("12/09/2012", "13/09/2012", "14/09/2012", "15/09/2012","16/09/2012","18/09/2012","19/09/2012","20/09/2012","22/09/2012","23/09/2012")
x <- as.Date(x, "%d/%m/%Y")
y <-c(30,32,33,34,35,45,46,44,46,47)
y2<-c(20,22,23,27,29,55,54,56,54,53)
y3 <- c(10,10,10,7,6,NA,NA,NA,NA,NA)
data1 <- data.frame(x,y1)
data1$w <-"A"
data2 <- data.frame(x,y2)
data2$w <-"B"
data3 <- data.frame(x,y3)
data3$w <-"C"
colnames(data1)<- c("Date", "Rating", "Brand")
colnames(data2)<- c("Date", "Rating", "Brand")
colnames(data3)<- c("Date", "Rating", "Brand")
data <-rbind(data1,data2,data3)
#Chart
(plot <-ggplot(data, aes(x=Date,
y=Rating, colour=Brand, group=Brand))
+ geom_line(size=.5)
+ geom_smooth(aes(x=Date, y=Rating),
method="loess", size=3, se=F) )