ggplot 그래프에 색상 적용법(viridis, brewer scales)

그래프를 만들 때 구도를 정하는데도 시간이 많이 걸리지만, 어떤 색상을 사용할지 고민 하는 시간이 훨씬 더 많은 편이다. 왜냐하면, 색상을 어떤 걸 사용하는지에 따라 촌스러운 그래프가 될 수도, 아니면 감각적인 그래프로 보일 수도 있기 때문이다. 그래서 이런 부분에 시간을 할애하는 편인데, 디자인에 조예가 깊지 않아 결과물에는 크게 영향을 미치지 않는다. 그런 나에게 색상선정 고민을 없애주는 함수가 있어 간단하게 정리해본다. 사용한 프로그램은 R프로그램이며, ggplot2 패키지를 사용하였다.

[더 읽기]

실폭도로 데이터를 이용하여 도로지도 그리기

시군구, 읍면동 등의 경계데이터를 받아 지도를 그리는 건 해봤으니, 이번에는 도로를 그려보는 걸 해볼 예정이다. 필요한 프로그램은 R프로그램으로 할 것이고, 패키지는 sf, tidyverse 정도면 가능하다. 대략 아래의 이미지처럼 하나의 시군구를 선택해서 혹은 범위를 조정해서 그릴 부분을 정할 수 있다.

[더 읽기]

R프로그래밍 - 불필요한 지도 영역 제거하기

서울시 선거구지도를 그려봤으니, 경기도 선거구까지만 지도로 표현해보려고 했는데, 몇가지 문제가 생겼다. 안산시 선거구를 그릴때, 행정동 정보를 이용해서 그룹화해서 경계를 병합하여 아래 그림과 같이 그릴 수 있었다. 그런데 좌측하단에 작은 섬이 하나 포함되면서 전체적으롤 지도가 넓은지역을 포함해야 하다보니 공백영역이 많아 보여 효율적인 표현이 어려웠다.

[더 읽기]

국회위원선거 서울특별시 선거구 지도 만들기

R프로그래밍 언어의 ggplot2, sf 패키지 등을 이용해서 제22대 총선 선거구 지도를 그려볼까한다. 전국지도를 다 그릴수는 없고, 서울특별시만 대상으로 데이터를 가공해서 그려보았다. 디자인은 최근 여론조사들을 참고했고, 왼쪽에는 전체 서울시의 지도를, 오른쪽은 특정 선거구를 그려보았다.

[더 읽기]

(ggplot2) 래스터(Raster) 데이터로 지도 그리기

지도 데이터는 벡터(Vector) 또는 래스터(Raster) 데이터로 나뉜다. 이 포스팅에서는 래스터(Raster) 데이터를 이용하여 지도를 그려볼까한다. 래스터(Raster) 데이터 모델은 셀의 연속 그리드로 공간을 나타낸다. raster 데이터를 읽고 활용할 수 있는 패키지는 대표적으로 terraraster 정도 있다. 각각 함수명이나 파라메터 사용법 정도 다를 뿐 원리는 동일하다. 하나씩 알아보려 한다.

[더 읽기]

(ggplot2) SF 패키지 공간 관계 표현하기

sf 패키지는 공간 영역간에 겹치는 부분, 혹은 그 특정 경계내에만 위치하는 특정 공간을 표시하는 등의 공간간 연산 작업을 아주 쉽게 수행할 수 있도록 기능을 제공하고 있다. 예를 들어 특정 프랜차이즈 가맹점을 전국 지도에 x 로 모두 표시했는데, 서울 영등포구안에 있는 가맹점만 지도에 표시하고 싶을 때, sf 패지키의 공간간의 관계연산을 통해 쉽게 필터링 할 수 있다.

[더 읽기]

(ggplot2) 지도 여러개를 하나로 묶어 그리기

저번 포스팅에서 외식비 관련해서 지도 그래프를 하나만 그렸었었다. 그런데 외식비 통계에 보면 냉면, 비빔밥, 삽겹살 등 종류가 다양하기 때문에 종류별로 지도를 하나로 묶어 표현하는게 좋을거 같았다. shp 지도파일만 있으면 ggplot을 이용해서 여러 그래프를 한판에 그릴 수 있다.

[더 읽기]

(ggplot2) 지도에서 지역별 경계 합치기

한국소비자원에서 외식비 관련 통계를 가지고 지도그래프를 그릴까 했는데, 데이터에 세종시가 없었다. 내가 받은 shp 지도파일은 세종시가 별도로 있다보니, 충남지역에 넣어 경계를 합쳐야만 했다. sf 패키지에서는 영역을 합칠때, st_union 을 사용하면 된다. (ggplot2) 벤다이어그램 그리기 포스팅에 사용법을 정리해놓았다.

[더 읽기]

(ggplot2) scales 패키지 사용 예제

scales 패키지는 ggplot2에서 사용되는 스케일 조정을 위한 일련의 함수들을 포함하고 있다. 이 패키지는 그래프의 축, 색상, 크기 등 다양한 속성들을 효과적으로 조절할 수 있도록 도와주며, 일반적으로 ggplot2 그래픽을 더 세밀하게 제어할 때 유용하다. 어떻게 기능이 동작하는지 예제만 봐도 이해가 된다.

[더 읽기]

(ggplot2) x/y 축 레이블 스케일(단위) 변경하기

그래프를 그리다보면, 가장 어려운 부분 중 하나는 데이터 값을 인식 가능한 속성이나 단위로 변환하는 것이다. scales 패키지는 ggplot2에서 스케일링 기능을 제공하며, 기본 나누기, 레이블, 변환 및 팔레트를 재정의할 수 있는 도구를 제공한다. 아래 코딩예시들은 Label numbers in decimal format 문서의 예시를 참고하였다.

[더 읽기]