2014-03-03 3 views
0

나는 R의 구획에 정말로 고심하고 있습니다. 나는 남성을위한 동일한 음모에서 다른 해에 남성의 나이와 logmx의 음모를 만들어야합니다. 이 음모에는 "1870-1879", "1940-1949", "1960-1969", "1980-1989"에 대한 4 줄이 있어야합니다. 이 특정 연도에 4 가지 하위 집합을 만들고 결합하려고했지만 R의 새로운 점과 내가 뭘 잘못하고 있는지 모르겠다. 비슷한 답변이 많이 나왔지만 해결할 수 없었습니다. ggplot2 패키지로 만들어야합니다. 서브 세트다른 연도 범주의 ggplot

d1 <- data.frame(males11$Age, log(males11$mx), males11$Year)
d2 <- data.frame(males12$Age, log(males12$mx), males12$Year)
d3 <- data.frame(males13$Age, log(males13$mx), males13$Year)
d4 <- data.frame(males14$Age, log(males14$mx), males14$Year)

#for

males11<-males[445:1555,1:3]
males12<-males[4885:5995, 1:3]
males13<-males[9325:10435, 1:3]

+ geom_line(aes(males11$Age, log(males11$mx), colour=males11$Year), d1) +
geom_line(aes(males12$Age, log(males12$mx), colour=males12$Year), d2) +
geom_line(aes(males13$Age, log(males13$mx), colour=males13$Year), d3) + 당신은 그하여 원본 데이터 프레임과 그룹의 요소를 구축해야 geom_line(aes(males14$Age, log(males14$mx), colour=males14$Year), d4)

+1

공급하십시오 'dput (head (male [, 1 : 3], 10))'의 출력을 질문에 대한 편집으로 사용합니다. – Thomas

+0

설명서를 읽어보십시오. 'aes '안에'$'를 써서는 안됩니다. 왜 당신은 단순히'ggplot (남자 ​​445 : 155, 4885 : 5995, 9325 : 10435, 13765 : 14653)], aes (x = 연령, y = log (xm), color = Year)) + geom_line()'? – Roland

+0

당신의 대답을 이해합니다. 고마워요. – Sigh

답변

0


는, 이와 유사한이 :

males$group <- cut(males$Year, 
        breaks=seq(1799, 2099, 10), 
        dig.lab=4) 
library(ggplot2) 
ggplot(males[males$group %in% c("(1869-1879]", "(1939-1949]", "(1959-1969]", "(1979-1989]"), ], 
     aes(Age, mx, colour=group)) + 
    geom_line() + 
    scale_y_log10()