2009-11-29 6 views
11

ggplot2를 사용하여 산점도를 만들고 레이블을 지정하려고합니다. 플로팅 할 변수는 가로 및 세로 축이 표준 편차 단위 (1,2,3,4, ... 평균값) 단위로 플롯되도록 크기가 조정됩니다. 제가 할 수 있기를 원하는 것은 평균으로부터의 표준 편차의 일정한 한도를 넘는 요소들에 대해서만 레이블을 붙이는 것입니다. 이상적으로이 라벨링은 다른 데이터 열을 기반으로합니다.ggplot2 분산 형 레이블

이 방법이 있습니까?

온라인 설명서를 살펴본 적이 있지만 플롯 된 데이터에 대한 레이블 정의에 대해 아무 것도 찾을 수 없었습니다.

도움주세요.

감사합니다.

BEB

라벨링은 다음과 같은 방법으로 수행 할 수 있습니다

답변

15

사용 부분 집합 다음 ggplot 기능의 외부

library(ggplot2) 
x <- data.frame(a=1:10, b=rnorm(10)) 
x$lab <- letters[1:10] 
ggplot(data=x, aes(a, b, label=lab)) + 
    geom_point() + 
    geom_text(data = subset(x, abs(b) > 0.2), vjust=0) 
4

:

library("ggplot2") 
x <- data.frame(a=1:10, b=rnorm(10)) 
x$lab <- rep("", 10) # create empty labels 
x$lab[c(1,3,4,5)] <- LETTERS[1:4] # some labels 
ggplot(data=x, aes(x=a, y=b, label=lab)) + geom_point() + geom_text(vjust=0) 
1

부분 집합 :

library(ggplot2) 
set.seed(1) 
x <- data.frame(a = 1:10, b = rnorm(10)) 
x$lab <- letters[1:10] 
x$lab[!(abs(x$b) > 0.5)] <- NA 
ggplot(data = x, aes(a, b, label = lab)) + 
    geom_point() + 
    geom_text(vjust = 0) 

q 사용 플롯 :

qplot(a, b, data = x, label = lab, geom = c('point','text')) 
관련 문제