ggplot2에서 쌓인 geom_bar의 y 축 원점 조정

지구 이론

ggplot2를 사용하여 누적 막대 그림을 플로팅하고 싶은데 색상 매핑과 스택 순서를 올바르게 가져 오는 데 어려움이 있습니다. 다음 예제는 이 SO 답변 에서 0이 아닌 y 축 원점을 얻기 위해 개발 되었지만 보시다시피 다른 문제가 발생합니다. 색상이 제대로 매핑되지 않고 플롯 순서가 잘못되었습니다. 이를 처리하는 가장 좋은 방법에 대한 조언에 감사드립니다. 원하는 출력은에 대한 요인 수준에 rating따라 지정된 순서대로 색상을 조정하여 색상을 조정해야합니다.

require(ggplot2)
d = data.frame(grp = rep(c('A','B'), each = 4), 
               rating = rep(c('bad','poor','ok','good'), 2),
               value = c(15,45,35,5,5,15,55,30), stringsAsFactors = F)

if(require(reshape2)) reshape2::dcast(d, grp ~ rating) # show structure

d$rating = ordered(d$rating, levels=c('bad','poor','ok','good'))
d$grp = ordered(d$grp, levels=c('B','A'))

# split datsets so we can plot 'negative' bars
d1 = subset(d, rating %in% c('ok','good'))
d2 = subset(d, rating %in% c('poor','bad'))

ggplot() + 
  geom_bar(data = d1, aes(x=grp, y=value, fill=rating), stat='identity', position='stack') + 
  geom_bar(data = d2, aes(x=grp, y=-value, fill=rating), stat='identity', position='stack') + 
  scale_fill_manual(values=c('red','pink','lightgreen','green')) +
  geom_line(data=d1, aes(x=c(.5,2.5), y=c(0,0)), size=2, linetype='dashed') +
  coord_flip()

여기에 이미지 설명 입력

세르반 타 나사

약간의 재정렬과 limits () 사용이 도움이 될 것입니다.

d2 <- d2[order(d2$rating, decreasing =T),]

ggplot() + 
     geom_bar(data = d1, aes(x=grp, y=value, fill=rating), stat='identity',
               position='stack') + 
     geom_bar(data = d2, aes(x=grp, y=-value, fill=rating), stat='identity', 
               position='stack') + 
     scale_fill_manual(values=c('red','pink','lightgreen','green'),
                       limits=c("bad","poor","ok","good"))+
     geom_line(data=d1, aes(x=c(.5,2.5), y=c(0,0)), size=2, linetype='dashed') +
     coord_flip()

여기에 이미지 설명 입력

ggplot2를 배우고 자하는 사람이라면 Winston Chang의 R Graphics Cookbook을 구하는 것이 좋습니다 .

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ggplot2, Y 축에서 원하지 않는 이름 지정

분류에서Dev

x 및 y 축 크기 조정 (geom_bar)

분류에서Dev

ggplot2에서 facet_grid ()를 사용할 때 일반적인 y 축 제한을 정의하는 방법

분류에서Dev

ggplot2 geom_bar가 기본 정렬이 아닌 요인 수준으로 축을 그리는 방법

분류에서Dev

R ggplot2 : 막대 내부의 레이블, 쌓인 geom_bar 없음

분류에서Dev

쌓인 geom_bar 내 항목 순서

분류에서Dev

ggplot2의 다른 열로 y 축에 레이블 지정

분류에서Dev

ggplot2, y 축 정렬

분류에서Dev

facet_grid를 재정렬하고 ggplot2의 geom_bar를 인수합니다.

분류에서Dev

Seaborn에서 x 축 원점과 y 축 원점 사이의 공간을 줄이는 방법

분류에서Dev

ggplot2에서 Y 축 반올림

분류에서Dev

GGPLOT2 : 순서가 지정된 문자 변수가 x 축인 geom_area

분류에서Dev

점이 x 축, y 축 또는 원점에 있는지 확인하는 프로그램

분류에서Dev

ggplot의 geom_bar에서 가로 막대 색상 지정

분류에서Dev

ggplot2에서 산점도 쌓기

분류에서Dev

geom_bar 막대가 x 축이 아닌 y 축에서 나오는 이유는 무엇입니까?

분류에서Dev

ggplot2 : y 축에 두 개의 변수 (동일한 척도에서 측정 됨)가있는 산점도 : 미학을 변경하고 별도의 회귀선을 추가하려면 어떻게해야합니까?

분류에서Dev

오름차순으로 쌓인 geom_bar를 정렬하는 방법

분류에서Dev

R : 누적 geom_bar (ggplot)의 각 X 축 요소에 대한 여러 열

분류에서Dev

x 축에 별도의 그룹화 된 변수가있는 ggplot geom_bar

분류에서Dev

R ggplot2에서 y 축 값을 기반으로 x 축을 재정렬하는 방법

분류에서Dev

보조 y 축을 ggplot2의 올바른 변수에 연결하는 방법은 무엇입니까?

분류에서Dev

Python에서 boxplot의 y 축 크기를 조정하는 방법

분류에서Dev

jupyter 노트북에서 matplotlib 플롯의 Y 축 크기 조정

분류에서Dev

ggplot2 : facet_grid에서 x 축 레이블의 조건부 서식

분류에서Dev

y 축 ggplot2의 음수 값에 괄호 사용

분류에서Dev

ggplot2 : 범례에서 x 축까지의 거리를 조정 하시겠습니까?

분류에서Dev

matplotlib에서 y 축 크기 조정

분류에서Dev

ggplot2를 사용하여 축의 특정 지점에 사용자 지정 텍스트 추가

Related 관련 기사

  1. 1

    ggplot2, Y 축에서 원하지 않는 이름 지정

  2. 2

    x 및 y 축 크기 조정 (geom_bar)

  3. 3

    ggplot2에서 facet_grid ()를 사용할 때 일반적인 y 축 제한을 정의하는 방법

  4. 4

    ggplot2 geom_bar가 기본 정렬이 아닌 요인 수준으로 축을 그리는 방법

  5. 5

    R ggplot2 : 막대 내부의 레이블, 쌓인 geom_bar 없음

  6. 6

    쌓인 geom_bar 내 항목 순서

  7. 7

    ggplot2의 다른 열로 y 축에 레이블 지정

  8. 8

    ggplot2, y 축 정렬

  9. 9

    facet_grid를 재정렬하고 ggplot2의 geom_bar를 인수합니다.

  10. 10

    Seaborn에서 x 축 원점과 y 축 원점 사이의 공간을 줄이는 방법

  11. 11

    ggplot2에서 Y 축 반올림

  12. 12

    GGPLOT2 : 순서가 지정된 문자 변수가 x 축인 geom_area

  13. 13

    점이 x 축, y 축 또는 원점에 있는지 확인하는 프로그램

  14. 14

    ggplot의 geom_bar에서 가로 막대 색상 지정

  15. 15

    ggplot2에서 산점도 쌓기

  16. 16

    geom_bar 막대가 x 축이 아닌 y 축에서 나오는 이유는 무엇입니까?

  17. 17

    ggplot2 : y 축에 두 개의 변수 (동일한 척도에서 측정 됨)가있는 산점도 : 미학을 변경하고 별도의 회귀선을 추가하려면 어떻게해야합니까?

  18. 18

    오름차순으로 쌓인 geom_bar를 정렬하는 방법

  19. 19

    R : 누적 geom_bar (ggplot)의 각 X 축 요소에 대한 여러 열

  20. 20

    x 축에 별도의 그룹화 된 변수가있는 ggplot geom_bar

  21. 21

    R ggplot2에서 y 축 값을 기반으로 x 축을 재정렬하는 방법

  22. 22

    보조 y 축을 ggplot2의 올바른 변수에 연결하는 방법은 무엇입니까?

  23. 23

    Python에서 boxplot의 y 축 크기를 조정하는 방법

  24. 24

    jupyter 노트북에서 matplotlib 플롯의 Y 축 크기 조정

  25. 25

    ggplot2 : facet_grid에서 x 축 레이블의 조건부 서식

  26. 26

    y 축 ggplot2의 음수 값에 괄호 사용

  27. 27

    ggplot2 : 범례에서 x 축까지의 거리를 조정 하시겠습니까?

  28. 28

    matplotlib에서 y 축 크기 조정

  29. 29

    ggplot2를 사용하여 축의 특정 지점에 사용자 지정 텍스트 추가

뜨겁다태그

보관