如何在不连续日期的ggplot2中获得连续的行

时间:2012-09-16 20:18:29

标签: r ggplot2

当缺少数据或日期间存在较大差距时,ggplot会产生不连续的行。

例如:

enter image description here

    q.data<-structure(list(date = structure(c(15544, 15546, 15547, 15548, 
15550, 15552, 15554, 15556, 15575, 15580, 15587, 15588, 15589, 
15593, 15596), class = "Date"), data = c(NA, 0.2, 0.2, 0.3, 0.6, 
0.7, 0.8, 0.9, NA, NA, 1, 1, 1.1, 1.7, 2)), .Names = c("date", 
"data"), row.names = c(NA, -15L), class = "data.frame")

q.data$date<-as.Date(q.data$date, format="%Y-%m-%d")

q.plot<-qplot(data=q.data,
              x=date,
              y=data)+geom_line()

print(q.plot)

我正在寻找一种强制连续线的方法。

1 个答案:

答案 0 :(得分:3)

我认为,如果没有NA s ,日期中存在较大差距,就不会发生这种情况。 NA值似乎是您的问题。

我认为

q.plot <- qplot(data=na.omit(q.data),...) 

应该有用,但我尝试过(有效)

print(q.plot %+% na.omit(q.data))

enter image description here

PS:1。使用dput发布数据会稍微好一些。 2.我的解决方案也在系列的开头和结尾摆脱了NA值,这可能是有问题的......