분포도의 평균 및 백분위 수에 대한 데이터 레이블

루카

을 사용하여 변수 분포를 시각화하기 위해 사용자 지정 차트를 만들고 geom_density있습니다. 사용자 지정 값에 대해 5 번째 백분위 수 및 95 번째 백분위 수에 3 개의 수직선을 추가했습니다.

해당 라인에 레이블을 어떻게 추가합니까?

나는 사용해 geom_text보았지만 x 및 y 변수를 매개 변수로 지정하는 방법을 모르겠습니다.

library(ggplot2)

ggplot(dataset, aes(x = dataset$`Estimated percent body fat`)) + 
  geom_density() +
  geom_vline(aes(xintercept = dataset$`Estimated percent body fat`[12]), 
             color = "red", size = 1) +
  geom_vline(aes(xintercept = quantile(dataset$`Estimated percent body fat`,
                                       0.05, na.rm = TRUE)), 
             color = "grey", size = 0.5) +
  geom_vline(aes(xintercept = quantile(dataset$`Estimated percent body fat`,
                                       0.95, na.rm = TRUE)), 
             color="grey", size=0.5) +

  geom_text(aes(x = dataset$`Estimated percent body fat`[12], 
                label = "Custom", y = 0), 
            colour = "red", angle = 0) 

다음을 얻고 싶습니다.

  1. 맞춤 값의 경우 차트 상단의 선 바로 오른쪽에 라벨을 추가하고 싶습니다.
  2. 백분위 수 레이블의 경우 차트 중간에 추가하고 싶습니다. 5 번째 백분위 수 라인의 왼쪽과 95 번째 백분위 수 라인의 오른쪽

https://i.imgur.com/thSQwyg.png 를 얻을 수 있었던 것은 다음과 같습니다.

그리고 다음은 내 데이터 세트의 처음 50 줄입니다.

structure(list(`Respondent sequence number` = c(21029L, 21034L, 
21043L, 21056L, 21067L, 21085L, 21087L, 21105L, 21107L, 21109L, 
21110L, 21125L, 21129L, 21138L, 21141L, 21154L, 21193L, 21195L, 
21206L, 21215L, 21219L, 21221L, 21232L, 21239L, 21242L, 21247L, 
21256L, 21258L, 21287L, 21310L, 21325L, 21367L, 21380L, 21385L, 
21413L, 21418L, 21420L, 21423L, 21427L, 21432L, 21437L, 21441L, 
21444L, 21453L, 21466L, 21467L, 21477L, 21491L, 21494L, 21495L
), `Estimated percent body fat` = c(NA, 7.2, NA, NA, 24.1, 25.1, 
30.2, 23.6, 24.3, 31.4, NA, 14.1, 20.5, NA, 23.1, 30.6, 21, 20.9, 
NA, 24, 26.7, 16.6, NA, 26.9, 16.9, 21.3, 15.9, 27.4, 13.9, NA, 
20, NA, 12.8, NA, 33.8, 18.1, NA, NA, 28.4, 10.9, 38.1, 33, 39.3, 
15.9, 32.7, NA, 20.4, 16.8, NA, 29)), row.names = c(NA, 50L), class = 
"data.frame")
jay.sf

먼저 깨끗한 열 이름을 권장합니다.

dat <- dataset
names(dat) <- tolower(gsub("\\s", "\\.", names(dat)))

기본 R 플롯은 다음을 수행 할 수 있습니다. 요점은 분위수 및 사용자 지정 위치를 저장하여 나중에 좌표로 사용하여 동적 위치를 제공 할 수 있다는 것입니다. 이것이 가능한지 / 어떻게 할 수 있는지 잘 모르겠습니다 ggplot.

plot(density(dat$estimated.percent.body.fat, na.rm=TRUE), ylim=c(0, .05), 
     main="Density curve")
abline(v=c1 <- dat$estimated.percent.body.fat[12], col="red")
abline(v=q1 <- quantile(dat$estimated.percent.body.fat, .05, na.rm=TRUE), col="grey")
abline(v=q2 <- quantile(dat$estimated.percent.body.fat, .95, na.rm=TRUE), col="grey")
text(c1 + 4, .05, c(expression("" %<-% "custom")), cex=.8)
text(q1 - 5.5, .025, c(expression("5% percentile" %->% "")), cex=.8)
text(q2 + 5.5, .025, c(expression("" %<-% "95% percentile")), cex=.8)

여기에 이미지 설명 입력

참고 : 케이스 당신이 화살표는 단지 예를 들어하지 않는 것처럼 "5% percentile"대신 c(expression("5% percentile" %->% "")).

또는 ggplot사용할 수 있습니다 annotate.

library(ggplot2)
ggplot(dataset, aes(x = dataset$`Estimated percent body fat`)) + 
  geom_density() +
  geom_vline(aes(xintercept = dataset$`Estimated percent body fat`[12]), 
             color = "red", size = 1) +
  geom_vline(aes(xintercept = quantile(dataset$`Estimated percent body fat`,
                                       0.05, na.rm = TRUE)), 
             color = "grey", size = 0.5) +
  geom_vline(aes(xintercept = quantile(dataset$`Estimated percent body fat`,
                                       0.95, na.rm = TRUE)), 
             color="grey", size=0.5) +
  annotate("text", x=16, y=.05, label="custom") +
  annotate("text", x=9.5, y=.025, label="5% percentile") +
  annotate("text", x=38, y=.025, label="95% percentile")

여기에 이미지 설명 입력

참고, 그 중 하나가 솔루션에 결과 (즉, 정확한 라벨 위치) 내보내기 크기에 따라 달라집니다. 이를 제어하는 ​​방법을 배우려면 예를 들어 플롯을 디스크에 이미지로 저장하는 방법을 살펴보십시오 . .


데이터

dataset <- structure(list(`Respondent sequence number` = c(21029L, 21034L, 
21043L, 21056L, 21067L, 21085L, 21087L, 21105L, 21107L, 21109L, 
21110L, 21125L, 21129L, 21138L, 21141L, 21154L, 21193L, 21195L, 
21206L, 21215L, 21219L, 21221L, 21232L, 21239L, 21242L, 21247L, 
21256L, 21258L, 21287L, 21310L, 21325L, 21367L, 21380L, 21385L, 
21413L, 21418L, 21420L, 21423L, 21427L, 21432L, 21437L, 21441L, 
21444L, 21453L, 21466L, 21467L, 21477L, 21491L, 21494L, 21495L
), `Estimated percent body fat` = c(NA, 7.2, NA, NA, 24.1, 25.1, 
30.2, 23.6, 24.3, 31.4, NA, 14.1, 20.5, NA, 23.1, 30.6, 21, 20.9, 
NA, 24, 26.7, 16.6, NA, 26.9, 16.9, 21.3, 15.9, 27.4, 13.9, NA, 
20, NA, 12.8, NA, 33.8, 18.1, NA, NA, 28.4, 10.9, 38.1, 33, 39.3, 
15.9, 32.7, NA, 20.4, 16.8, NA, 29)), row.names = c(NA, 50L), class = 
"data.frame")

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

분포도의 데이터 평균에 수직선

분류에서Dev

PySpark : 데이터 프레임 내 그룹에 대한 평균 및 평균 값의 개수 검색

분류에서Dev

R DataTable 데이터를 평균 및 분위수로 변환

분류에서Dev

Pandas 데이터 프레임의 행 하위 집합에 대한 평균 및 최대 값 계산

분류에서Dev

R : 행 및 열 레이블 모두에있는 데이터 프레임의 하위 집합 평균

분류에서Dev

R : 데이터 프레임의 두 데이터 열에 대해 시간당 평균 15 분 데이터

분류에서Dev

x 축에 백분위 수 레이블이 균일하게 분포

분류에서Dev

2 백분위 수 사이의 배열의 평균 요소

분류에서Dev

R : 95 % 신뢰 구간 (2.5 ~ 97.5 백분위 수) 내 벡터의 최소, 최대, 평균 및 중앙값

분류에서Dev

R : 95 % 신뢰 구간 (2.5 ~ 97.5 백분위 수) 내 벡터의 최소, 최대, 평균 및 중앙값

분류에서Dev

대규모 데이터 세트에서 최대, 최소, 평균 온도를 찾기위한 피벗 테이블

분류에서Dev

R에서 특정 시간 및 월에 대한 데이터 프레임의 평균 값

분류에서Dev

한 달 이상의 데이터에 대한 평균 계산

분류에서Dev

pandas 데이터 프레임 행 내의 목록에 대한 평균 및 표준 dev 계산

분류에서Dev

R에서 여러 데이터 프레임에서 열에 대한 평균 백분율 통계를 도출하는 방법은 무엇입니까?

분류에서Dev

Incanter 표본 평균 및 분산이 분포 평균 및 분산에 가깝지 않음

분류에서Dev

R에서 1 사분 위와 3 사 분위 사이에 포함 된 데이터의 평균값

분류에서Dev

Swift : 분석에서 데이터 번호 검색 및 평균 값 계산

분류에서Dev

mysql의 한 테이블에서 평균 중복 데이터

분류에서Dev

여러 열 및 여러 날짜에 대한 사 분위수 평균

분류에서Dev

Julia의 데이터 프레임에 대한 단순 이동 평균 플로팅

분류에서Dev

Julia의 데이터 프레임에 대한 단순 이동 평균 플로팅

분류에서Dev

봄 부팅이 메트릭에 '평균', '분'또는 '백분위'를 추가?

분류에서Dev

R : 데이터 하위 집합에 대한 백분위 수 계산

분류에서Dev

데이터 분할 및 평균 Excel 찾기

분류에서Dev

데이터 프레임 R의 모든 열에 대한 평균 가져 오기

분류에서Dev

데이터 프레임의 각 그룹에 대한 평균을 얻는 방법

분류에서Dev

데이터 프레임의 모든 초 값에 대한 평균 계산

분류에서Dev

SQL Server-그룹화 기준, 평균 및 백분위 수

Related 관련 기사

  1. 1

    분포도의 데이터 평균에 수직선

  2. 2

    PySpark : 데이터 프레임 내 그룹에 대한 평균 및 평균 값의 개수 검색

  3. 3

    R DataTable 데이터를 평균 및 분위수로 변환

  4. 4

    Pandas 데이터 프레임의 행 하위 집합에 대한 평균 및 최대 값 계산

  5. 5

    R : 행 및 열 레이블 모두에있는 데이터 프레임의 하위 집합 평균

  6. 6

    R : 데이터 프레임의 두 데이터 열에 대해 시간당 평균 15 분 데이터

  7. 7

    x 축에 백분위 수 레이블이 균일하게 분포

  8. 8

    2 백분위 수 사이의 배열의 평균 요소

  9. 9

    R : 95 % 신뢰 구간 (2.5 ~ 97.5 백분위 수) 내 벡터의 최소, 최대, 평균 및 중앙값

  10. 10

    R : 95 % 신뢰 구간 (2.5 ~ 97.5 백분위 수) 내 벡터의 최소, 최대, 평균 및 중앙값

  11. 11

    대규모 데이터 세트에서 최대, 최소, 평균 온도를 찾기위한 피벗 테이블

  12. 12

    R에서 특정 시간 및 월에 대한 데이터 프레임의 평균 값

  13. 13

    한 달 이상의 데이터에 대한 평균 계산

  14. 14

    pandas 데이터 프레임 행 내의 목록에 대한 평균 및 표준 dev 계산

  15. 15

    R에서 여러 데이터 프레임에서 열에 대한 평균 백분율 통계를 도출하는 방법은 무엇입니까?

  16. 16

    Incanter 표본 평균 및 분산이 분포 평균 및 분산에 가깝지 않음

  17. 17

    R에서 1 사분 위와 3 사 분위 사이에 포함 된 데이터의 평균값

  18. 18

    Swift : 분석에서 데이터 번호 검색 및 평균 값 계산

  19. 19

    mysql의 한 테이블에서 평균 중복 데이터

  20. 20

    여러 열 및 여러 날짜에 대한 사 분위수 평균

  21. 21

    Julia의 데이터 프레임에 대한 단순 이동 평균 플로팅

  22. 22

    Julia의 데이터 프레임에 대한 단순 이동 평균 플로팅

  23. 23

    봄 부팅이 메트릭에 '평균', '분'또는 '백분위'를 추가?

  24. 24

    R : 데이터 하위 집합에 대한 백분위 수 계산

  25. 25

    데이터 분할 및 평균 Excel 찾기

  26. 26

    데이터 프레임 R의 모든 열에 대한 평균 가져 오기

  27. 27

    데이터 프레임의 각 그룹에 대한 평균을 얻는 방법

  28. 28

    데이터 프레임의 모든 초 값에 대한 평균 계산

  29. 29

    SQL Server-그룹화 기준, 평균 및 백분위 수

뜨겁다태그

보관