2015-01-26 1 views
-1

두 개의 열이있는 데이터 프레임에있는 데이터에서 누적 막 대형 차트를 만들려고합니다. 데이터 포맷의 예는 아래와 같다 : IR : 두 열 데이터의 스택 막대 차트

가 한계 즉, 0-40, 41-48, 49-60에 의해 정의 된 각 부문 (에 속하는 엔트리들의 개수를 카운트 할 필요가 매일
Date Speed 
01/01/2013 56 
01/01/2013 45 
01/01/2013 34 
02/01/2013 23 
02/01/2013 12 
02/01/2013 1 
03/01/2013 48 

, > 60) 그리고 각 날의 수를 누적 가로 막 대형 차트로 플롯합니다.

각 일별 항목 수를 개별적으로 계산하고 표준 누적 가로 막 대형 차트 명령을 사용하여 플롯 할 올바른 형식의 새 데이터 프레임에 결과를 배치하면됩니다. 그러나 이것은 비효율적 인 접근 방법입니다. 나는 검색에서 더 우아한 방법을 찾을 수 없었지만 나는 반드시 존재해야한다고 생각한다.

내가 사용할 수있는 시스템에 새 패키지를 설치할 수 없으므로 표준 패키지 만 사용하고 싶습니다.

답변

1

여기에 barplot 자료를 사용할 수 있습니다. 다음은 그 예

dd<-read.table(text="Date Speed 
01/01/2013 56 
01/01/2013 45 
01/01/2013 34 
02/01/2013 23 
02/01/2013 12 
02/01/2013 1 
03/01/2013 48", header=T) 

#make sure it's a date  
speed_date <- as.Date(dd$Date, "%m/%d/%Y") 

#cut data into requested bins 
speed_cut <- cut(dd$Speed, 
    breaks=c(0,40,48,60,Inf), 
    labels=c("0-40", "41-48", "49-60", "> 60") 
) 

#pick a color for each bin 
speed_cols <- heat.colors(nlevels(speed_cut)) 

barplot(table(speed_cut, speed_date), col=speed_cols) 
legend("topright",levels(speed_cut), fill=speed_cols) 

enter image description here

당신은 당신의 취향에 맞게 색상을 변경하실 수 있습니다 생산하고 있습니다.

+0

Perfect. 많은 감사합니다. R은 이런 종류의 작업을 얼마나 쉽게 만들어 주는지 저를 놀라게합니다. – Pete