2012-09-16 6 views
2

누락 된 데이터가 있거나 날짜에 큰 차이가있는 경우 ggplot은 불연속 라인을 생성합니다.ggplot2에서 연속적인 날짜를 얻는 방법

예 :

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) 

나는 연속 선을 강제 할 수있는 방법을 찾고 있어요.

+0

Ben Bolker는 NAs에 문제가 있으며 제거로 해결됨을 나타냅니다. 그러나 다른 시점에 나타나는 NAs와 함께 많은 변수/열이있어 전체적으로 내 데이터에 na.omit을 사용할 수 없습니다. –

+1

stat_omit의 라인을 따라 뭔가가 좋을 것입니다. –

+1

나는'stat_identity'를'stat_omit'에 해킹하기 시작했다. (즉,'stat_identity'를 감싸는'stat_omit' 만 래퍼로 만든다.) 그러나 나는 아주 멀리까지 가지 못했다 ... –

답변

3

NA이 없는데 실제로 큰 차이가있는 날짜는 이라고 생각하지 않습니다. 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 값을 제거하여 시리즈의 시작과 끝 부분에서 문제가 될 수 있습니다.

+0

정말 고마워, 기록 속도! 그러나 NAs가 문제가되는 것처럼 보입니다. 그러나 같은 변수로 다른 변수에 대해 다른 시점에 나타나는 NAs와 같은 많은 변수가 있기 때문에이 솔루션은 어색 할 것입니다. NAs가있는 모든 행 또는 각 변수가 플롯되도록 개별적으로 수행해야합니다. 죄송합니다. 질문에이 점을 지정하지 않았습니다. –

관련 문제