2011-04-20 5 views
1

다음 데이터가 있으며 group1group2 변수에 꺾은 선형 차트를 작성하고 싶습니다.그룹 별 라인 차트

dat <- structure(list(group1 = structure(c(1L, 1L, 1L, 1L, 2L, 2L, 2L), 
             .Label = c("a", "b"), 
             class = "factor"), 
         group2 = c(1L, 2L, 3L, 4L, 1L, 2L, 3L), 
         val1 = c(10L, 3L, 2L, 7L, 10L, 3L, 2L), 
         val2 = c(8L, 4L, 8L, 5L, 8L, 4L, 8L), 
         val3 = c(7L, 5L, 6L, 9L, 7L, 5L, 6L)), 
       .Names = c("group1", "group2", "val1", "val2", "val3"), 
       class = "data.frame", row.names = c(NA, -7L)) 

이상적 저는 로우 변수 (기본적 val2val1 세 점을 연결하는 방법에 기초하여 광고 차트 필요 (레벨 ab 두) 각각 group 1 변수 내의 group1에 따라 두 그래프를 갖고 싶어 , 및 val3) 다른 group2 변수에 대해 서로 다른 색을 사용합니다.

답변

2

은이 같은 것을 의미합니까 :

dat2 <- with(dat, data.frame(group1 = rep(group1, each = 3), 
          group2 = factor(rep(group2, each = 3)), 
          values = stack(dat[,3:5])[,1])) 

위의 코드를 더 쉽게 ggplot으로 사용되는 형식으로 데이터를 재구성. dat 내가 기본적으로 일부를 구성 했어

ggplot line plot example

제공

p <- ggplot(dat2, aes(x = 1:3, y = values, colour = group2)) + geom_line() + 
     geom_point() + facet_wrap(~ group1, ncol = 2) 
p 

를 통해 당신이 원하는 내가 생각하는 줄거리가 생산 될 수 있습니다 나는 당신의 질문에 추가 dput() 코드를 사용하여 정의 된 x 데이터 그렇지 않으면 포인트가 있어야하는 x 및 y 좌표 공간의 위치를 ​​어떻게 알 수 있습니까?

+0

해줘서 고맙습니다. x 데이터 부족에 대한 직관력이 부족하다는 것을 알고 있지만 날짜 변수이며 R에서 날짜 변수를 다루는 번거 로움을 겪고 싶지 않습니다. – user227290