2016-06-13 2 views
2

내가 ggplot를 사용하여 막대 그래프를 만들려고 노력하고 있어요, 정말 같은 :에 (내 예 3을 말한다 곳)재정 ggplot2 전설 텍스트

mtcars$gear <- as.factor(mtcars$gear) 
ggplot(mtcars, aes(gear, mpg, fill=gear))+geom_bar(stat="identity")+ 
scale_fill_manual(values=c("grey30", "grey50", "grey70")) 

는 지금은 전설의 첫 번째 레이블을 부탁합니다 "참조"라고 말하면서 나머지 라벨은 그대로 유지합니다 (예 : 4와 5).

나는 이것을하는 방법을 찾는 데 어려움을 겪고 있습니다. 나는 여기 어딘가에서 나의 것과 비슷한 질문을 찾을 수 없었다.

누구든지 해결책을 알고 있습니까?

답변

2

수정 인자 라벨, 다음 줄거리 :

# set labes when creating factor 
mtcars$gear <- factor(mtcars$gear, 
         levels = c("3", "4", "5"), 
         labels = c("reference", "4", "5")) 

아니면 요인 변환 후 만 "3"에 대한 라벨을 업데이트 할 경우 :

mtcars$gear <- as.factor(mtcars$gear) 
levels(mtcars$gear)[levels(mtcars$gear) == "3"] <- "reference" 
+0

'labels = c ("3"= "reference")'와 같이해야 하는가? – beetroot

+0

@beetroot'인자 (mtcars $ gear, labels = c ("3"= "reference"))'를 의미합니까, 이것은 작동하지 않습니다. – zx8754

+0

죄송합니다. scale_fill_manual()에서 사용되었습니다. – beetroot

1

당신은 사용할 수 있습니다

mtcars$gear <- as.factor(mtcars$gear) 
ggplot(mtcars, aes(gear, mpg, fill=gear)) + geom_bar(stat="identity") + 
scale_fill_manual(
    values=c("grey30", "grey50", "grey70"), 
    labels = c("reference", "4", "5"))