그래프 만들기

데이터를 보기 쉽게 그림으로 표현한 것을 '그래프' 라고 합니다. 데이터의 원 자료나 통계표 보다는 시각화된 그래프가 의미와 특징을 더 쉽게 파악할 수 있습니다.

우리는 R의 ggplot2 패키지를 사용하여 그래프를 그리는 방법을 알아보겠습니다.

 

ggplot2

ggplot2는 레이어 구조의 문법 체계를 가지고 있습니다. 배경을 만들고, 그 위에 그래프를 그리고, 그래프의 축 범위, 색, 표식을 추가하는 순서로 그래프가 만들어지게 됩니다.

ggplot2를 사용하려면 당연히 ggplot2 패키지를 불러와야만 합니다.

library(ggplot2)

 

1. 산점도

레이어 구조 순서로 산점도를 만듭니다.

# 배경 만들기
ggplot(data = mpg, aes(x = displ, y = hwy)) + 
	geom_point() # 배경에 산점도 추가

 

그래프 설정을 변경하는 코드를 추가하여 축 범위를 설정하여 보겠습니다.

# 배경 만들기
ggplot(data = mpg, aes(x = displ, y = hwy)) + 
	geom_point() + # 배경에 산점도 추가
	xlim (3,6) +
	ylim (10, 30)

 

2. 막대 그래프

집단별 평균표를 만들어서 막대 그래프를 그릴 수 있습니다.

library(ggplot2)
library(dplyr)

df_mpg <- mpg %>%
	group_by(drv) %>%
	summarise(mean_hwy = mean(hwy))

ggplot(data = df_mpg, aes(x = drv, y = mean_hwy)) + geom_col()

 

크기 순으로 정렬하려면 reorder() 함수를 사용하면 막대를 크기 순으로 정렬할 수 있습니다.

ggplot(data = df_mpg, aes(x = reorder(drv, -mean_hwy), y = mean_hwy)) + geom_col()

 

빈도 막대 그래프 또한 그릴 수 있습니다. geom_bar() 를 사용하면 됩니다.

ggplot(data = mpg, aes(x = drv)) + geom_bar()

연속 변수를 x에 지정하면 값의 분포를 파악할 수 있습니다.

ggplot(data = mpg, aes(x = hwy)) + geom_bar()

 

3. 선 그래프

데이터를 선으로 표현한 그래프를 선 그래프라고 합니다. 주로 시간에 따라 달라지는 데이터를 표현할 때 선 그래프를 이용합니다.

ggplot(data = economics, aes(x = data, y =umemploy)) + geom_line()

 

4. 상자 그림 (Boxplot)

상자그림은 데이터의 분포를 직사각형의 상자 모양으로 표현한 그래프 입니다. qplot 에서의 상자그림은 한 변수의 분포만 볼 수 있었지만 ggplot2 의 상자그림은 여러 변수를 비교하여 볼 수 있습니다.

ggplot(data = mpg, aes(x = drv, y = hwy)) + geom_boxplot()

 

 

// 참고자료

영우, 『쉽게 배우는 R 데이터 분석』, 이지스 퍼블리싱, 2019

이영호, "확률과통계"  가천대학교, 2019

'Programming > R' 카테고리의 다른 글

WordCloud2  (0) 2019.05.27
텍스트 마이닝 - KoNLP  (0) 2019.05.20
데이터 정제하기 (데이터 클린징)  (0) 2019.04.15
데이터 전처리  (0) 2019.04.14
변수 조작하기  (0) 2019.04.10

+ Recent posts