728x90
반응형
이번 포스팅에서는 ggplot2 패키지를 활용해서 다양한 그룹이 있는 Barplot을 그려보도록 하겠습니다.
1. 실습 데이터 정의
### Data definition (multiple groups)
df2 <- data.frame(supp=rep(c("VC", "OJ"), each=3),
dose=rep(c("D0.5", "D1", "D2"),2),
len=c(6.8, 15, 33, 4.2, 10, 29.5))
head(df2)
<< Result >>
supp dose len
1 VC D1 6.8
2 VC D2 15.0
3 VC D3 33.0
4 OJ D1 4.2
5 OJ D2 10.0
6 OJ D3 29.5
이번 데이터는 두 개의 그룹을 가지고 있습니다.
이런 경우 Bargraph를 어떻게 그릴 수 있을까요??
2. 패키지 불러오기
library(ggplot2)
library 함수를 통해 먼저 ggplot2 패키지를 불러왔습니다.
3. Bargraph 꾸미기
# Stacked barplot with multiple groups
ggplot(data=df2, aes(x=dose, y=len, fill=supp)) +
geom_bar(stat="identity", width = 0.5)
# Use position=position_dodge()
ggplot(data=df2, aes(x=dose, y=len, fill=supp)) +
geom_bar(stat="identity", position=position_dodge())
두 개의 group 변수가 있는 경우, 2가지 방식으로 그릴 수 있습니다.
아무런 함수를 입력해주지 않으면 첫번째 그래프처럼 하나로 합쳐져서 그려집니다.
position = position_dodge() 인자를 추가해주시면, 분리되서 그려집니다.
# Change the colors manually
p <- ggplot(data=df2, aes(x=dose, y=len, fill=supp)) +
geom_bar(stat="identity", color="black", position=position_dodge())+
theme_minimal()
# Use custom colors
p + scale_fill_manual(values=c('#999999','#E69F00'))
마찬가지로 색깔을 마음대로 지정할 수 있답니다.
(1) 값 라벨링
### Labeling
ggplot(data=df2, aes(x=dose, y=len, fill=supp)) +
geom_bar(stat="identity", position=position_dodge())+
geom_text(aes(label=len), vjust=1.6, color="red",
position = position_dodge(0.9), size=8)+
scale_fill_brewer(palette="Paired")+
theme_minimal()
geom_text로 dodge 된 그래프에 labeling을 진행할 수 있습니다.
반응형
'데이터 다루기 > 데이터 시각화' 카테고리의 다른 글
[R을 활용한 시각화] 4. ggplot2 (Box plot) (0) | 2020.11.30 |
---|---|
[R을 활용한 시각화] 3. ggplot2 (Scatter plot) (0) | 2020.11.30 |
[R을 활용한 시각화] 2. ggplot2 (Lineplot) (0) | 2020.11.25 |
[R을 활용한 시각화] 1. ggplot2 (Barplot) (1) (0) | 2020.11.23 |
[R을 활용한 시각화] 1. ggplot2 (Barplot) (1) (1) | 2020.11.23 |