참고: Looker 22.14에서는 GeoJSON 파일 지원이 map_layer 매개변수에 추가되었습니다.
Looker에는 여러 기본 제공 지도 레이어가 포함되어 있지만 커스텀 지도 리전을 정의하여 지리정보 데이터를 표시할 수도 있습니다. 다음과 같은 세 개 주변 지역의 평균 연령 테이블이 있다고 가정해 보겠습니다.
| 고객 주변 지역 | 고객 평균 연령 |
|---|---|
| downtown | 19.5292 |
| eastside | 54.4626 |
| westside | 34.9534 |
고객 주변 지역을 특정 지리적 리전에 매핑하여 지도에 시각화할 수 있습니다. 이 작업을 수행하려면 이 페이지에 설명된 단계를 따르세요.
리전 데이터 준비
리전 데이터를 준비하려면 각 리전의 지리적 형태와 해당 리전을 데이터베이스의 데이터와 연결하는 메타데이터가 포함된 데이터 파일이 필요합니다.
Looker는 TopoJSON이라는 형식을 사용하여 이 데이터를 간단한 방식으로 저장합니다. TopoJSON 파일은 여러 일반적인 shapefile 형식으로 쉽게 만들 수 있으며, shapefile을 TopoJSON으로 변환 커뮤니티 게시물에 설명된 대로 온라인 도구로 직접 만들 수도 있습니다.
이 예시의 경우 이미 이 매핑을 제공하는 TopoJSON 파일이 있습니다. TopoJSON 파일의 각 리전에는 neighborhood라는 속성이 있으며 이는 LookML 프로젝트에서 neighborhood라는 측정기준으로 정의되는 고객 주변 지역 필드의 값과 일치합니다.
리전 데이터 업로드
리전 데이터를 Looker로 가져오려면 TopoJSON 파일을 프로젝트의 파일 브라우저 섹션으로 드래그 앤 드롭하면 됩니다. 이 데이터는 LookML 코드와 함께 커밋되고 LookML 프로젝트의 다른 코드처럼 업데이트됩니다.
지도 레이어 만들기
이제 프로젝트에 리전 데이터가 있으므로 LookML 모델에 지도 레이어를 만들어야 합니다.
map_layer 매개변수를 사용하여 모델 파일에 정의를 추가할 수 있습니다.
map_layer: my_neighborhood_layer {
file: "neighborhoods.topojson"
property_key: "neighborhood"
}
file 매개변수는 리전 데이터가 포함된 프로젝트에 있는 파일의 이름을 참조하고 property_key는 Looker 내에 노출하려는 데이터 세트의 속성입니다. 키가 무엇인지 확실하지 않은 경우 속성 키를 생략하면 Looker가 적절한 키를 선택하려고 시도합니다.
팁: 레이어 정의에서file대신url을 지정하여 온라인에서 호스팅되는 TopoJSON 파일을 사용할 수도 있습니다.
map_layer: my_neighborhood_layer {
url: "https://raw.githubusercontent.com/cooluser/JSON_Stuff/master/Neighborhoods.topoJSON"
property_key: "neighborhood"
}
지도 레이어를 데이터와 연결
이제 map_layer_name 매개변수를 적용하여 뷰의 neighborhood 측정기준을 새로 만든 지도 레이어와 연결하기만 하면 됩니다.
dimension: neighborhood {
sql: ${TABLE}.neighborhood ;;
map_layer_name: my_neighborhood_layer
}
이는 Looker에 이 측정기준의 값이 지도 레이어에 의해 노출된 property_key와 연결되어 있다는 것을 알려줍니다. 또한 Looker에 이 데이터를 지도에 표시할 수 있다는 것도 알려줍니다.
지도 보기
이제 neighborhood 측정기준을 사용하는 쿼리를 Explore 페이지에서 지도에 표시할 수 있습니다.