2012-10-14 8 views
2

ggplot2 클러스터링

사람이/ggplot2 w 이와 같은 플롯을 만들기 위해 올바른 방향으로 날 지점 수 있습니까? 기능 유형조차도.

저는 ggplot2를 둘러 보았으며 이와 같은 것을 찾을 수 없습니다.

+2

만들려는 플롯의 필수 기능을 지정할 수 있습니까? (예 : 색상에 관심이 있습니까? 포인트의 '지터'에 대해) –

답변

8

I 플롯의 필수적인 특징이 있다고 가정하고있어 그 : a) 상기 X 축 범주이며, 점 b)의 ​​X 위치가 약간 C를 다양) 일부... 요약 통계 (나는 중앙값을 사용했습니다). 그건 당신이

require(ggplot2) 
require(plyr) 

#define the data 
lev <- gl(2, 10, 20, labels=c("I", "II")) 
y <- runif(20) 
df <- data.frame(lev, y) 

#calculate the medians - I'm guessing that's what the horiz lines are? 
meds <- ddply(df, .(lev), summarise, med = median(y)) 

ggplot(df, aes(x=lev, y=y, colour=lev)) + 
    geom_point(position="jitter") + 
    theme_bw() + 
    scale_colour_manual(values=c("red", "darkblue")) + 
    geom_errorbar(data=meds, aes(x=lev, y=med, ymin=med, ymax=med)) 

, 무엇을 찾고 있는지 있다면 당신은 그 중요한 경우 숫자와 작은 브라켓을 추가 annotate()를 사용할 수 있습니다. enter image description here

+0

이것은 훌륭해 보이지만 어쨌든 지터와 센터의 하이브리드처럼 점을 더 많이 클러스터합니까? – Doug

+1

'position = "jitter"를'position = position_jitter (width = 0.05)'로 대체하십시오. 다음과 같이 오차 막대를 함께 조정할 수 있습니다. 'geom_errorbar (width = 0.1, aes (...' –

+0

)이 점만큼이나 적고 (@Doug가 원하는 것처럼 보일 정도로),'geom_dotplot (binaxis = "y ", stackdir ="center ")'[docs] (http://docs.ggplot2.org/current/geom_dotplot.html)에는 지터가있는 geom_point 대신 매우 유사한 데이터가있는 좋은 예가 있습니다. –