2016-08-02 3 views
1

축 x에 개월 수를, y 축에 변수 값을 표시하고자합니다. 변수는 몇 개월 동안 null 일 수 있습니다. 축 x를 항상 강제로 12 개월 동안 보여줄 수 있습니까? V와barplot에 null 데이터를 표시하는 방법 R

같은 데이터 프레임 : 8 월에 여기

month variable 
    1 125 
    2 45 
    3 158 
    4 15 
    5 58 
    6 78 
    7 89 
    9 15 
    10 85 
    11 799 
    12 55 

(달 8) 변수가 0

bp <- barplot(V[,2], axes = FALSE) 
axis(1, at = bp, labels=c("jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec")) 

감사

+0

시도가 NA' – jlesuffleur

+0

'에 의해'NULL' 값을 대체하기는 몰라도 당신에게 특정 대답을하기 어렵다 무엇 'V'처럼 보입니다. [재현 가능한 예] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)를 제공해 주시겠습니까? –

답변

1

당신 8 월에 패드 NA 필요 (8 월). 간단하게 더 일반적으로

bp <- barplot(append(V[,2], NA, 7), axes = FALSE) 
axis(1, at = bp, labels=c("jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec")) 

을 사용하여 내가 이런 짓을 했을까 :

x <- rep(NA, 12) 
x[V$month] <- V$variable 
bp <- barplot(x, axes = FALSE) 
axis(1, at = bp, labels=c("jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec")) 

enter image description here

+0

패딩에 대한 좀 더 일반적인 해결책은'df <- data.frame (month = 1 : 12)'12 개월마다 새로운 데이터 프레임을 만드는 것입니다. 그런 다음'V'를'df'와 병합합니다. 여기서'V'는 원래 데이터 프레임이고, 아마도 누락 된 월이있을 수 있습니다.'V <- merge (df, V, all.x = TRUE)'. 이제 놓친 달 모두 'V'에 해당하는 'NA'를 갖게됩니다. –

+1

또는 "php-barplot (ifelse (% V $ month, V $ variable, NA)에서 1:12 %, axes = FALSE)' –

관련 문제