2013-04-23 4 views
0

측정 된 점이있는 곳을 레이블링하는 것과는 반대로 반복되는 x- 스케일 레이블에 왜 그런 문제가 있는지 잘 모르겠습니다. 또한 내 전설에 대한 내 레이블이 작동하지 않습니다. 아래ggplot2에서 X 축 레이블과 범례 레이블 반복하기

FamIncome Ethnicity mean.bmi 
1 1 1 28.54250 
2 1 2 26.66300 
3 1 3 26.62105 
4 1 4 29.51396 
5 1 5 25.66722 
6 2 1 29.62404 
7 2 2 28.08393 
8 2 3 28.62215 
9 2 4 28.97561 
10 2 5 25.57714 
11 3 1 29.52630 
12 3 2 28.27235 
13 3 3 29.67060 
14 3 4 31.36768 
15 3 5 26.13361 
16 4 1 30.83368 
17 4 2 30.80814 
18 4 3 29.29594 
19 4 4 29.18521 
20 4 5 24.80550 
21 5 1 29.76500 
22 5 2 29.24404 
23 5 3 28.89435 
24 5 4 31.48172 
25 5 5 28.02522 
26 6 1 30.05087 
27 6 2 29.88574 
28 6 3 29.53793 
29 6 4 30.97993 
30 6 5 25.57857 
31 7 1 30.31787 
32 7 2 29.28055 
33 7 3 28.50421 
34 7 4 30.65427 
35 7 5 26.66094 
36 8 1 29.15000 
37 8 2 29.02789 
38 8 3 28.36507 
39 8 4 33.51915 
40 8 5 28.38263 
41 9 1 28.17679 
42 9 2 28.74731 
43 9 3 28.06196 
44 9 4 31.38483 
45 9 5 26.96000 
46 10 1 28.71633 
47 10 2 33.44409 
48 10 3 30.63048 
49 10 4 30.22587 
50 10 5 27.36375 
51 14 1 30.78161 
52 14 2 27.43575 
53 14 3 28.96817 
54 14 4 32.22378 
55 14 5 25.62778 
56 15 1 29.15982 
57 15 2 27.42672 
58 15 3 27.60567 
59 15 4 30.05013 
60 15 5 26.80271 

코드 : 나는이 더 "명성"을 얻을 때까지 내가 갖는 이미지의 사진을 게시 할 수 없습니다

a <- ggplot(nh1, aes(x=FamIncome, y=mean.bmi)) + geom_line(aes(group=Ethnicity, colour = Ethnicity)) + geom_point() 
a = a + labs(list(title="Average BMI versus Family Income", x = "Family Income", y = "Average BMI")) 
a = a + scale_x_discrete(breaks=c("1","2","3","4","5","6","7","8","9","10","14","15"), 
     labels = c("0-4,999", "5K-9,999", "10K-14,999", "15K-19,999", "20K-24,999", "25K-34,999", "35K-44,999", "45K-54,999", "55K-64,999", "65K-74,999", "75K-100K", "Over 100K")) 
a = a + theme(axis.text.x=element_text(angle=-90)) 
a = a + scale_colour_continuous(name = "Ethnicity", 
         breaks=c("5","4","3","2","1"), 
         labels=c("Other Race/Multi", "Black","White","Other Hispanic", "Mexican-American")) 

a 

+0

@ user1317221_G 질문을 편집 해 주셔서 감사합니다. 서식 지정 프롬프트를 기반으로하는 것처럼 형식을 지정하는 방법을 알 수 없습니다. – MryElln

+0

설명에서 출력이 잘못되었는지 판단 할 수 없습니다. 나는 당신이 ggplot의 오래된 버전을 사용하고 있다고 말한다 ('opts'는 더 이상 사용되지 않습니다). 내가 이걸 실행할 때 나는 분명히 잘못된 것을 발견 할 수 없다. – joran

+0

내가 잘못하고있는 것의 그림을 포함하고 싶었지만 그렇게하기에는 Stack Overflow에 너무 익숙하지 않았습니다. 계속 진행되고있는 것은 FamIncome이 1-10,14와 15로 나뉘어져 있다는 것입니다. 나는 이름을 바꾸려고 할 때 그걸 할 때 그것을 그래프로 그려서 잘못된 위치에서 X 축을 나누고 라벨을 붙이고 있습니다. 내가 추가 한 것은 끝까지 반복되기 시작합니다. 나는 이것이 x 축이 부서지고 ggplot에서이를 수정하는 방법을 알아 내려고 노력하고 있거나 내 데이터 세트를 조정하는 방법과 관련된 문제라고 생각한다. 원래 게시물로 변경 한 것을 추가했다. . – MryElln

답변

1

가에 X 변수를 변환 시도 포인트 요소 :

a <- ggplot(nh1, aes(x=factor(FamIncome), y=mean.bmi)) + geom_line(aes(group=Ethnicity, colour = factor(Ethnicity))) 
a = a + labs(list(title="Average BMI versus Family Income", x = "Family Income", y = "Average BMI")) 
a = a + scale_x_discrete("Family Income", labels = c("0-4,999", "5K-9,999", "10K-14,999", "15K-19,999", "20K-24,999", "25K-34,999", "35K-44,999", "45K-54,999", "55K-64,999", "65K-74,999", "75K-100K", "Over 100K")) 
a = a + opts(axis.text.x=theme_text(angle=-90)) 
a = a + scale_colour_discrete(name = "Ethnicity", 
         breaks=c("5","4","3","2","1"), 
         labels=c("Other Race/Multi", "Black","White","Other Hispanic", "Mexican-American")) 

enter image description here

,

숫자 x 변수를 사용하면 ggplot은 실제로 범주 형으로 지정할 때이를 숫자 척도로 취급합니다. 또한 fillcolour 사이에 혼동이 있음을 유의하십시오. fill은 2 차원으로 채워진 영역 용입니다.

+0

그게 내가 찾고 있었던거야! 나는 그것이 계속된다는 것에 관해서 오류를 겪고 있기 때문에 그것이 문제라고 생각했다. 범례의 레이블이 작동하지 않는 이유는 무엇입니까? – MryElln

+0

@MryElln 죄송합니다. 근본적으로 같은 수정. 편집 중 ... – joran

+0

Wonderful! 감사합니다. – MryElln