문제

나는 ggplot2를 사용하여 ScatterPlot을 만들고 레이블을 지정하려고합니다. 내가 플로팅하는 변수는 수평과 수직 축이 표준 편차 단위로 표시되도록 스케일링됩니다 (평균에서 1,2,3,4, ... ECT). 내가 할 수있는 것은 평균에서 표준 편차의 특정 한계를 벗어난 요소 만 레이블을 지정하는 것입니다. 이상적으로는이 라벨링은 다른 데이터 열을 기반으로합니다.

이것을 할 방법이 있습니까?

온라인 매뉴얼을 살펴 보았지만 플롯 된 데이터에 대한 레이블을 정의하는 것에 대해서는 아무것도 찾을 수 없었습니다.

도움이 감사합니다!

감사!

Beb

도움이 되었습니까?

해결책

서브 세트 사용 :

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)

다른 팁

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

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)

GGPLOT 기능 외부의 하위 집합 :

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) 

qplot 사용 :

qplot(a, b, data = x, label = lab, geom = c('point','text'))
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top