2014-04-05 2 views
4

2 개의 변수가 포함 된 데이터 세트가 있습니다. x = 이벤트 번호 & y = 진폭 분석. > 3000 인 모든 점을 하나의 색상으로 표시하고 모든 점 < 3000은 다른 색상으로 표시되는 ggplot2에 산점도를 작성하려고합니다.ggplot2 scatterplot의 수치 임계 값을 기준으로 색상 그룹을 정의하는 방법

필자는 모든 데이터 포인트의 색을 바꿀 수 있지만 값 임계 값을 기반으로 색 구성표를 정의하는 방법을 파악할 수는 없습니다. 당신은 정말 그냥이위한 새로운 지표 변수를 할 필요가

dat <- data.frame(x=c(399, 16022, 14756, 2609, 1131, 12135, 
           7097, 12438, 12604, 14912, 11042, 
           14024, 7033, 4971, 15533, 4507, 4627, 
           12600, 7458, 14557, 3999, 3154, 6073), 
        y=c(3063.40137, 3687.42041, 3911.856, 
            4070.91748, 4089.99561, 4095.50317, 
            4159.899, 4173.117, 4177.78955, 
            4186.46875, 4201.874, 4272.022, 
            638.615, 649.8995, 668.8346, 
            688.754639, 711.92, 712.689636, 
            721.1352, 737.841, 741.0727, 
            755.2549, 756.730652)) 
+0

'? cut '을보고 어떻게 도움이 될지 알아보십시오. – hrbrmstr

+0

또한 'x'또는 'y'값 (또는 둘 다)에 기초한 상처가 있습니까? – hrbrmstr

답변

5

: 여기

내가 사용하고 데이터의 샘플입니다. @hrbrmstr에 따르면, cut은 이것을 수행하는 좋은 방법입니다 (원하는만큼 많은 절단 점에서 작동).

dat$col <- cut(dat$y, 
       breaks = c(-Inf, 3000, Inf), 
       labels = c("<=3000", ">3000")) 

ggplot(dat, aes(x = x, y = y, color = col)) + 
    geom_point() 
+0

완벽하게 작동했습니다! 정말 고맙습니다! – user3502134

+0

'+ scale_color_manual (값 = c ("darkolivegreen", "chartreuse"))'을 참조하십시오. 자세한 내용은'? scale_color_manual'을보십시오. – Gregor