ggplot의 그래프 구조와 문법 알아보기

2019. 6. 30. 07:00

R에 대해서 공부를 하면서 그래프가 분석의 목적에서 매우 유용하다는 말이 꽤 인상적이었다. 사람의 감각기관 중에서 가장 빠른 곳이 눈이고 눈은 문자보다 그림을 더 빨리 이해하기 때문이다. 또 R에서 그래프를 이쁘게 그려주기 때문에 그리는 맛도 있다.

오늘은 ggplot의 그래프 구조와 문법에 대해서 알아보도록 하겠다.



이전 포스팅에서 qplot에 대해서 알아보았다. ggplot의 그래프가 익숙하지 않다면 qplot으로 쉽게 그래프를 그릴 수 있다. ggplot이 다른 그래프 함수와는 문법이 약간 다르기 때문이다. 하지만 여러가지 자료를 보다보니 ggplot의 문법구조를 쉽게 이해할 수 있는 방법이 있었다.
( 참조: R 그래프 종류와 qplot으로 쉽게 그리기 )


ggplot의 구조를 쉽게 이해하려면 'Grammar of Graphics'라는 책에 대해서 알아야 한다. Leland Wilkinson이 1999년에 쓴 책으로 그래프의 구조를 알 수 있는 책이다. 이 책에는 2가지 주요한 포인트가 있는데, 그래프는 문법적인 요소들의 층으로 이루어져 있다는 것의미있는 그래프는 미적인 요소들의 매핑으로 가능하다는 것이다.


그래프_문법


여기서 나오는 그래프의 문법적인 요소들과 ggplot의 구조가 일치한다. 각각의 문법적인 요소는 아래와 같다.


그래프_요소


하나씩 살펴보면 아래와 같다.


- Data: 그래프를 그리려는 데이터

 - Aesthetics: 데이터 매핑하고자 하는 스케일 (x축, y축, 색깔 등), '심미적・미학적'이라는 뜻

 - Geometries: 데이터 사용하는 그래프 요소들 (박스플랏, 바그래프, 산점도 등), '기하학'이라는 뜻

 - Facets: 여러 면으로 그래프 그리기, 측면・양상・면이라는 뜻

 - Statistics: 그래프를 이해하기 위한 목적으로 다시 나타내기

 - Coordinates: 데이터가 그려지는 공간, 좌표라는 뜻

 - Themes: 데이터가 아닌 요소들


ggplot의 요소들이 각각에 정확히 일치한다. 이렇게 한 번 구조를 파악하고 나니 ggplot을 이해하기가 더 쉬워진 듯 하다. 다음 포스팅에서는 각각의 문법구조에 대해서 더 자세히 알아보도록 하겠다.


Asethetics에 대해서 자세히 알고 싶다면 아래 포스팅을 참조해보자. ( 참조: ggplot 문법 알아보기, aes(aesthetic)이란? )



오늘은 이렇게 ggplot의 그래프 구조와 문법에 대해서 알아보았다. R에서 ggplot으로 그리는 그래프는 이뻐서 그릴 맛(?)이 난다. 앞으로 ggplot과 더 친해져서 지루한 분석 작업을 더 재미있게 할 수 있으면 좋을 듯 하다.


몇 가지 팁이나 방법을 알면 R을 더 효율적으로 코딩할 수 있는 방법들이 있다. 자세한 내용이 궁금하다면, 아래 링크를 참조해보자.
( 참조: R 효율적인 코딩팁과 방법들 )


댓글()
  1. Favicon of https://bonhaus.tistory.com BlogIcon Bon Haus 2020.07.23 04:49 댓글주소  수정/삭제  댓글쓰기

    관리자의 승인을 기다리고 있는 댓글입니다