발표 주제와 범위
위치기반 빅데이터를 어떻게 시각화할지가 발표 주제임을 밝히고, 개발자 대상으로 쉬운 개념부터 성능 이슈까지 광범위하게 다루겠다고 안내한다. 위치 정보를 가진 데이터에 왜 주목하는지, 데이터를 어떻게 뿌리고 성능이 잘 나올 수 있는지를 예고한다.
위치 데이터 시각화가 분석 도구이자 아티스틱한 결과물이 되는 사례를 보여준다. 미국의 햄버거·피자 체인 분포 지도, 러닝 앱 데이터로 만든 도시별 궤적 지도 등을 예로 들며, 위치 빅데이터와 지도를 엮으면 분석성과 심미성이 함께 드러나는 경향을 설명한다.
시각화 준비물을 정리한다. 지도(예전엔 구글, 지금은 카카오·네이버·T맵·맵박스), 좌표와 매칭된 데이터, 이를 다룰 라이브러리가 필요하다. 좌표가 없어도 코엑스·주소처럼 위치로 추정 가능한 데이터면 되고, 고유명칭↔좌표 변환인 지오코딩/리버스 지오코딩 개념을 소개한다.
지도의 점·선·면(POI·노드링크·폴리곤) 개념과 축척·마커·래스터 개념을 짚은 뒤, WGS84 지리좌표계와 투영좌표계 두 가지, 그리고 도·도분·도분초 좌표 포맷을 설명한다. 좌표계 변환은 구글 검색이나 R·파이썬 라이브러리로 쉽게 해결된다고 안내한다.
위치 데이터 전처리의 두 축인 정확도와 클러스터링을 설명한다. GPS 오류로 부산과 일본 사이 현해탄에 찍히는 잘못된 좌표를 기준 영역으로 걸러내고, 좁은 공간에 몰린 여러 좌표를 해석 방향에 따라 하나로 묶는 클러스터링을 적용해야 한다고 강조한다.
위치 데이터가 가진 시간·주체·빈도·관계 등 여러 속성을 파악해 표출 방식을 골라야 한다고 설명한다. 위치를 고정하면 파이·바 차트, 주체의 출발지가 중요하면 플로우맵·컬렉션맵을 쓰는 식이다. 같은 데이터도 배경색만 바꾸면 느낌이 달라지며 ColorBrewer로 색상을 정하는 팁도 소개한다.
하루치 내비게이션 GPS 약 2300만 포인트로 트래핑 맵을 만드는 실전이다. GeoJSON으로 한꺼번에 뿌리면 브라우저가 죽어, 화면에 보이는 영역만 타일링해 순차 로딩하고, 밀도·거리 기반 클러스터링과 13단계 축척별 옵션 조정으로 떡지는 문제를 해결한 시행착오를 공유한다.
이런 시각화를 처음엔 맵박스로 구현했으나 오픈스트리트맵 기반이라 국내 도로 반영이 늦는 한계가 있어 자사 지도에 구현했다고 밝힌다. 포스트 기반 웹 서비스에 관련 기능을 베타로 올려 두었음을 알리며, 우리 지도로도 좋은 결과를 만들 수 있음을 보여주려 했다고 마무리한다.