사용데이터 : https://2stndard.tistory.com/68
파이(pie) trace : 원 그래프
ggplot2
에서 지원하지 않는 그래프 스타일이 원 그래프이다.
그래서 ggplot2
에서 원 그래프를 그리기 위해서는 막대
그래프를 그리고 이 막대 그래프를 극 좌표계를 사용하여 돌리는 트릭을
사용한다. 원 그래프는 데이터를 정확히 분석하기 어렵다는 차원에서 데이터
분석가들이 잘 사용하지 않는 그래프 타입이지만 현실적으로 많이 사용되고
있기 때문에 plotly
에서는 trace로 지원한다.
앞선 여타 trace와는 달리 파이 trace에는 X, Y축에 매핑되는
x
, y
속성의 설정이 없다. 대신 필수적 속성으로
values
와 labels
를 설정해야한다.
values
에 매핑되거나 설정된 수치 벡터에 따라 원을 각각의
슬라이스로 구분하게 되고 labels
에 매핑하거자 설정한 벡터가
각각의 trace 이름으로 설정된다. 또 원 그래프에 표시되는 데이터 값은
기본적으로 백분률 값이 표시된다.
## 대계열별 졸업자수 합계 데이터로 설정된 plotly 객체 생성
<- df_취업률_2000 |> group_by(대계열) |>
p_pie summarise(졸업자수 = sum(졸업자수)) |>
plot_ly()
|>
p_pie ## value와 labels를 매핑한 파이 trace 추가
add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열) |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
textinfo
앞의 원 그래프에서 원 안에 표현된 데이터는 values
에
매핑된 데이터의 백분율이 표시되었다. 이 데이터의 표시를 설정하는 속성이
textinfo
이다. textinfo
에서 설정사 가능한 값은
‘label’, ‘text’, ‘value’, ’percent’의 네 가지이고 이 네가지를
+
를 사용하여 동시에 사용할 수 있다. ’label’은
labels
로 설정된 값, text
는 text
로
설정된 값, ’value’는 values
에 설정된 값, ’percent’는 백분률
값이 표시된다.
|>
p_pie add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열,
## textinfo를 value로 설정
textinfo = 'value') |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
|>
p_pie add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열,
## textinfo를 percent로 설정
textinfo = 'percent') |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
|>
p_pie add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열,
## textinfo를 label+percent로 설정
textinfo = 'label+percent') |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
|>
p_pie add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열,
## textinfo를 label+value로 설정
textinfo = 'label+value') |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
hole
hole
은 원 그래프의 내부에 표시되는 구멍의 크기를
설정하는 속성이다. hole
이 설정되지 않거나 0으로 설정되면
완전한 원 그래프로 표시되지만 0부터 1사이의 값이 설정되면 그 크기만큼 빈
원이 생성되면서 도넛 그래프로 전환된다.
|>
p_pie add_trace(type = 'pie', values = ~졸업자수, labels = ~대계열,
textinfo = 'label+percent',
## hole을 0.4로 설정
hole = 0.4) |>
layout(title = list(text = '대학 계열별 취업률 분포'),
margin = margins)
'Plotly in R - 그래프에 마우스를 올려봅시다' 카테고리의 다른 글
동적 주가 그래프 in R (0) | 2022.11.23 |
---|---|
plotly 제목 설정 in R (3) | 2022.11.20 |
지수 인디케이터 in R (0) | 2022.07.10 |
plotly 박스 플롯의 평균과 표준편차 표시와 이상치 표시 in R (0) | 2022.06.13 |
plotly trace의 공통 속성(Attribute) - symbol, symbols (0) | 2022.06.12 |
댓글