Rev Notebook

[데이터 시각화] 3. 시간 시각화

by Rev_

시간 시각화는 시간에 따른 데이터의 변화를 표현하는 일이다.

 

> data(LakeHuron)  # data() : R에 내장되어 있는 데이터를 불러올 때
> str(LakeHuron)  # str() : 데이터에 대한 구조 또는 변수 정보
 Time-Series [1:98] from 1875 to 1972: 580 582 581 581 580 ...

먼저 R에 내장되어 있는 LakeHuron 데이터를 불러왔다.

이 데이터는 전형적인 시계열 데이터이며, 1875년부터 1972년까지 98개 연도에 대한 데이터를 담고 있다.

 

plot(LakeHuron, type="l", main='type="l"')
plot(LakeHuron, type="p", main='type="p"') 
plot(LakeHuron, type="b", main='type="b"')
plot(LakeHuron, type="h", main='type="h"')

각각 type을 "l", "p", "b"로 설정하고 plot을 그려보았다.

type="I"는 그래프 형태가 꺾은선(lines) 그래프이고, type="p"는 그래프 형태가 점 그래프이며, type="b"는 그래프 형태가 꺾은 선 그래프와 점 그래프를 동시에 표현, type="h"는 그래프 형태를 수직선으로 표시한다.

시간 변화에 따른 데이터의 변화 추이를 가장 적절하게 표현한 그래프는 어떤 것일까?

type Itype b가 시각화에 적절하다고 판단할 수 있다.

시간이 지남에 따라서 데이터의 변화 추세는 1930년까지 등락을 반복하지만 전체적으로 감소하는 추이를 볼 수 있다. 1930년 이후부터는 데이터의 등락의 폭이 커지면서 증가했다가 감소하는 것을 반복한다.

 

install.packages("gcookbook") # 필요한 패키지를 설치할 때 사용하는 명령어
library(gcookbook)	# library() : 설치된 패키지를 불러올 때 사용하는 명령어 
data(worldpop)  # data() : gcookbook 안에 내장되어 있는 데이터 불러오기
> str(worldpop)
'data.frame':   58 obs. of  2 variables:
 $ Year      : int  -10000 -9000 -8000 -7000 -6000 -5000 -4000 -3000 -2000 -1000 ...
 $ Population: int  2431 3564 5136 7562 11461 17920 28370 44820 72108 115066 ...

install.packages()를 사용하여 필요한 패키지를 설치한 후 library()를 이용하여 설치된 패키지를 불러온다. 물론 설치는 처음 1번만 하면 된다.

그렇게 worldpop 데이터를 불러왔는데, 연도별 세계인구에 대한 58 X 2의 데이터이다.

plot(data=worldpop, Population~Year, type="l", main='연도별 인구에 대한 꺾은선 그래프')

이 데이터로 plot을 그려보았다.

Population ~ Year이 의미하는 것은 ~의 왼쪽은 Y-축 변수이고, 오른쪽은 X-축 변수를 의미한다.

연도별 세계인구의 변화형태를 시각화한 꺾은선 그래프이다.

기원전 1만년전부터 현재까지 세계인구의 변화를 한눈에 알 수 있는데, 근대 전까지 세계인구의 증가는 매우 미미한 수준이었으나, 근대 이후부터는 세계인구가 폭발적으로 증가함을 알 수 있다.

왜 근대 이후부터 세계인구가 증가했을까?

농협혁명, 산업혁명으로 인해 과학이 발전하여 인구밀도가 높아진 것이다. (기근, 역병, 전쟁 등의 리스크 감소)

블로그의 정보

Hi Rev

Rev_

활동하기