CARTO VL을 활용하여 화재 확산 시각화하기

이 지도는 동기화된 데이터 스트림과 CARTO VL를 이용하여7월부터의 화재 발생 구역과 증가율을 보여줍니다.

이 지도의 초기 목표는 시간에 따른 화재 확산을 시각화하는 것이었습니다. 그러나 설계 및 개발 과정 속에서, 일부 화재의 비교적 빠른 확산 속도, 지형적 특징에 따른 확산 패턴 등 다른 특징들이 나타나기 시작했습니다.

실시간 지도 보기: https://cartodb.github.io/CARTOgraphy/vl/active-fires.html

 

# 데이터

 

지도에 표시된 화재 폴리곤은 GeoMAC Wildland Fire Support의 두 데이터셋 (현재 화재 발생 구역, 2018년 전체 화재 발생 구역)에서 파생된 것입니다. 현재 발생한 화재만 표시하기 위해서는, 두 개의 화제 데이터셋이 교차됩니다. 첫 번째 데이터셋에서활성으로 태그된 구역은 2018년 전체 화재 데이터셋에서 해당 경계 내의 폴리곤만 표시합니다. 화재가 진압됐다면 지도에 더 이상 표시되지 않습니다.

배경에는, NOAA 화재 발생 데이터를 이용하여 화재로 인해 발생된 연기 패턴이 표시됩니다.

각 데이터셋은 매 시간마다 소스에 동기화됩니다. , 데이터가 업데이트 될 때마다 해당 지도도 업데이트 됩니다.

 

 

## 애니메이션과 시각화

 

CARTO VL에는 시각화 기능이 아주 많습니다. 그 중 제가 가장 좋아하는 기능은 애니메이션입니다.

활성화된 화재 지도에는, 두 가지 폴리곤 애니메이션이 수행됩니다.

첫 번째는 현재 위치 내에서 시간의 흐름에 따라 화재가 확산되는 정도를 시각화한 것입니다. 수집된 주변 데이터(datecrnt) 에 따라 폴리곤이 만들어지고, 각각은 보고된 면적(gisacres)에 따라 색상이 지정됩니다. 애니메이션은 2018 7 1일부터 시작되며, 테이블 내의 가장 최근 데이터까지 플레이될 수 있습니다. 애니메이션은 30초 안에 모든 데이터를 순환합니다.  폴리곤은 페이드인(fade-in) 효과는 없지만 에이커를 기준으로 페이드 아웃(fade-out)합니다. , 더 큰 폴리곤은 작은 폴리곤보다 맵에 더 오래 표시되며 대부분의 화재는 작은 영역에서 큰 영역으로 퍼지기 때문에, 화재가 시작된 지점에서 점차적으로 페이드 아웃하여 더 크고 연속적인 폴리곤으로 이어집니다.

filter: animation(linear($datecrnt,time('2018-07-01T00:00:00Z'),globalMAX($datecrnt)),30,fade(0,$gisacres))

 

각 폴리곤은 면적에 따라 CARTO Color Schemes (OrYel)의 색상 중 하나가 지정됩니다. 여기서 노란색은 가장 작은 영역, 주황색에서 빨간색으로 갈 수록 큰 영역입니다. 폴리곤의 불투명도는 해당 영역을 기준으로 0.1에서 0.6 사이에서 혼합됩니다.

color: opacity(ramp(linear($gisacres,viewportMIN($gisacres),viewportMAX($gisacres)),oryel),blend(0.1,0.6,linear($gisacres)))

 

이러한 애니메이션 및 시각화 기술을 결합하면, 현재 화재 상황을 한 눈에 볼 수 있습니다.

 

 

연기 기둥은 더 감지하기 힘듭니다. 화재와 달리 연기는 시간에 따라 애니메이션화 되지 않습니다 (NOAA는 하루 단위로 데이터셋을 제공하기 때문에). 연기가 자연스럽고 유동적인 움직임을 가지고 있다는 것을 감안하여, 저는 어느 날 어떤 화재가 가장 많은 연기를 발생시키는지를 보고 연기가 어떻게 움직이는지 알 수 있는 효과를 원했습니다. 이는 실험해볼만 한 재미있는 기술입니다.

 

 

 

## 뷰포트 기반 스타일링

 

제가 좋아하는 CARTO VL의 또 다른 기능 하나는 전체 데이터셋에서 뷰포트 기반 스타일링을 수행하는 기능입니다.

뷰포트 기반의 스타일링을 통해, 전국적으로나 국지적으로 발생한 화재에 대해 보다 잘 이해할 수 있습니다.

아래 사진과 같이 지도가 미국 서부로 축소되면, 실제로 나타나는 화재는 북부 캘리포니아의 Mendocino Complex Carr 화재입니다. 다른 주에서 여러 화재가 발생하는 것을 볼 수 있지만, 현재 지도에서 가장 큰 화재는 2개이고, 크기에 따라 폴리곤이 색칠되기 때문에 비교적 작은 화재는 노란색에서 오렌지색 범위에서 더 많이 나타납니다.

 

 

Oregon 남부의 화재들을 확대해보면, Mendocino Carr 화재는 보기에서 사라지며, 기호(symbology)가 동적으로 업데이트 되어 현재 뷰포트의 화재만 나타냅니다.

 

 

 

## 범례와 상호작용

 

물론 범례와 호버 및 팝업 구성 요소가 없으면 지도가 완성되지 않습니다.

우리의 디자인 담당 Emilio는 다양한 수준의 정보를 계층적으로 제공하는 유익하면서도 눈에 거슬리지 않는 범례를 만들었습니다. 애니메이션 및 색상 표 범례를 순환하는 동적 타임 스탬프는 지도에 표시된 패턴을 이해하는 데 필수적입니다.

범례나 기호에 모든 정보를 넣을 수는 없기 때문에, 프론트 엔드 개발자 Jesus는 현재 폴리곤의 이름과 면적을 동적으로 가져오는 호버 기반 대화형 작업을 만들었습니다.

 

지도와 관련 코드는 여기서 확인하실 수 있습니다.

(출처: CARTO 기술 블로그

 

SPH는 CARTO, Google Maps, SuperMap 등 다양한 케이스에 적용될 수 있는 다채로운 제품군을 보유하고 있으며 고객의 사례에 꼭 맞는 무료 세미나 및 개별 컨설팅을 제공하고 있습니다. 각 케이스에 맞춰 더욱 자세한 이야기를 나누고 싶으시다면 여기에서 문의 주시길 바라며, SPH에서 발행하는 GIS/로케이션 인텔리전스 관련 최신 소식을 받아보고 싶으신 분들은 페이스북 페이지 또는 뉴스레터를 구독해 주시길 바랍니다. 감사합니다.