2013-07-06 3 views
8

, 나는 다음과 같은 밀도 플롯합니다 (각 종 값)결정 라인 전설 ggplot2와

ggplot(iris) + geom_density(aes(x=Sepal.Width, colour=Species)) 

색상 전설이를 통해 선이있는 상자로 나타납니다,하지만 플로트 된 밀도는 선입니다. 전설이 종의 각 항목에 대한 색상이있는 선으로 표시되도록하는 방법이 있습니까?

답변

14

stat_density()geom="line"으로 사용할 수 있습니다. 이 경우에만 상위 라인 만있을 것입니다.

ggplot(iris)+ 
    stat_density(aes(x=Sepal.Width, colour=Species), 
        geom="line",position="identity") 

당신은 또한 전체 영역 (모든 라인) 다음 show_guide=FALSEgeom_density()을 결합 할 수 있습니다 필요한 경우 (전설을 제거) 및 stat_density()보다는 수평 라인 전설을 추가합니다.

ggplot(iris) + 
    geom_density(aes(x=Sepal.Width, colour=Species),show_guide=FALSE)+ 
    stat_density(aes(x=Sepal.Width, colour=Species), 
        geom="line",position="identity") 

enter image description here

+0

두 번째 해결 방법은 제가 찾고있는 것입니다. 그러나 두 배로 밀도 선을 겹쳐서 두껍게 보이게하지 마십시오. – user248237dfsf

+0

예, 두 번 음모를 꾸몄습니다. 이는이 문제의 해결 방법 일뿐입니다. –

+0

두 번 플롯하지 않고 범례를 변경할 방법이 없습니까? – user248237dfsf

1

당신은 주위

ggplot(iris) + 
geom_density(aes(x=Sepal.Width, colour=Species),show_guide=FALSE) + 
stat_density(aes(x=Sepal.Width, colour=Species), 
      geom="line",position="identity", size = 0) + 
guides(colour = guide_legend(override.aes=list(size=1))) 

PS에 의해 두 번 라인을 세우고 얻을 수 있습니다 : 죄송 분명히 정답에 코멘트하지 않는 - 담당자의 문제 :

의 부족

pps : 실이 상당히 오래되었지만 오늘 나에게 도움이 되었기 때문에 언젠가 다른 사람을 도와 줄 수도 있습니다 ...