1. 개요
GEO VIZ 는 지도 API를 활용하여 빅쿼리에서 지리정보데이터를 시각화 할 수 있습니다.
빅쿼리 GEO viz는 다양한 기능이 있는건 아니지만 어플리케이션프로그램을 설치할 필요없이 해당 화면에서 1개의 쿼리로 분석결과를 지도에 쉽게 시각화 할 수 있습니다.
GEOGRAP 열로 검색되는 위도, 경도 함수를 입력하면 GEOGRAPH로 변환 할 수 있습니다. 이 문서에서는 빅쿼리 지리함수를 사용하여 시각화를 할 것입니다.
2. 제약사항
브라우저에서 처리 되며 오프라인에서 다운받아 처리 할 수 없습니다
빅쿼리 프로젝트의 빅쿼리로 실행이 허용된 사용자들과 시각화 공유를 할 수 있습니다. 빅쿼리 엑세스 권한을 인증하고 부여해야합니다.
3. 지도 시각화 방법
(1) GEO biz 웹도구를 클릭합니다.
(2) 계정선택 대화 상자에서 Authorize 클릭하고 인증합니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/5.jpg)
(3) 계정 선택 대화상자에서 구글 계정을 클릭합니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/6.jpg)
(4) 엑세스 대화 상자 ‘Allow’를 클릭하여 빅쿼리 데이터에 접속 할 수 있는 권한을 GEO VIZ에 허용합니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/7.jpg)
(5) 프로젝트를 선택합니다. 단 빅쿼리 퍼블릭데이터는 권한이 없을 경우가 있으니 해당 허용된 프로젝트에 csv를 업로드 하셔서 그대로 사용하는것을 권장합니다.
Iaas-demo-208601이라는 프로젝트ID를 선택하겠습니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/9-1.jpg)
(6) 데이터 탐색
가설
런던의 공공자전거 렌탈은 도심지역의 정거장에서 렌탈건수가 많을 것이다.
이 가설을 탐색하려면
빅쿼리 테이블의 t_bike1 (테이블명)
필드 | 필드명 |
---|---|
start_station_name | 빌린 정거장의 이름 |
longitude, latitude | 좌표 |
CT | 자전거렌탈대여건수집계(count) |
빌린정거장의 렌탈 건수를 집계하여 많이 빌린 건수를 빅쿼리 콘솔에서 조회합니다. 아래의 그림처럼 row 만 나올 경우 그 도시에 살지 않은 이상 도심지역에 인지 알 수 없습니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/0333.jpg)
그래서 아래의 쿼리로 시각화를 할 것입니다. SQL은 다음과 같습니다.
S– 정거장이름, 좌표함수, 자전거 렌탈대여건수
SELECT start_station_name , ST_GeogPoint(longitude, latitude) as st , ct
FROM `iaas-demo-208601.pjs_test.t_bike1`
여기서의 주의점은 ST_GeogPoint 함수를 쓸 때 꼭 필드명(alias) 을 붙여야합니다.
ST_GeogPoint 는 표준 SQL 지리 함수를 사용하여 지리정보로 변환 할 수 있습니다. 경도와 위도 위한 두개의 필드만 있으면 지리필드가 생성되어 시각화에 사용가능합니다.
(7) SQL 입력 후 실행
해당 SQL 을 입력후 “RUN”을 클릭하고 processing location의 선택에 지형을 선택할 수 있지만 “Auto-select”만 설정해도 좌표로 따라갑니다 “Run” 클릭후 아래 화면과 같이 점만 나옵니다 빌린 정거장의 위치만 찍히고 어느곳이 많이 렌탈했는지 알 수 없습니다. 런던이 찍혔으면 정확히 지도에는 나왔다고 보면 됩니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/0347.jpg)
(8) 데이터의 스타일 적용
데이터를 클릭하면 해당 데이터들의 row를 조회 할 수 있습니다. “Add styles”버튼을 클릭합니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/12.jpg)
(9) 스타일 색 적용 (fillcolor)
데이터 드리븐으로 클릭하고 점의 색상 지정 할 수 있습니다. domain에서 쿼리 필드값중에 ct(자전거렌탈건수) 값 중에서 제일 큰 값과 제일 작은 값을 넣고 range 에서는 작은 값에는 빨간색 큰 값에는 갈색으로 지정했습니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/13.jpg)
(10) 스타일 투명도 적용 (fillOpacity)
점의 채우기 색상의 투명도를 지정할 수있습니다. domain 쿼리 필드값중에 ct(자전거렌탈건수) 값 중에서 제일큰 값과 제일 작은 값을 넣고 range 에서는 0과 1로 지정해주면서 CT값이 큰 경우엔 진하게 낮은 경우엔 옅은색으로 나옵니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/14.jpg)
(11) 스타일 도형의 크기(circleRadius)
점의 크기를 지정할 수있습니다. domain 쿼리 필드값중에 ct(자전거렌탈건수) 값 중에서 제일 큰 값과 제일 작은 값을 넣고 range 에서는2와 250로 지정해주면 CT값이 큰 경우엔 크게 아니면 작게 나타납니다. range의 범위는 알맞게 쓰시면 됩니다.
이렇게 적용하면 다음과 같이 시각화가 됩니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/15.jpg)
좀 더 도심 지역이란 것을 확연히 시각화 하려면 위성을 클릭하면 위성화면으로 전환이 됩니다. 확연하게 도심인지 알 수 있습니다.
![](https://image-kr.bespinglobal.com/wp-content/uploads/2022/05/16.jpg)
가설에서 예측한 ‘도심지역에서 렌탈수가 많다.’ 라는 예측과 같게 도심인 워터루와 기차역이 있는 킹크로스역과 진하고 크며 시티오브런던에도 두드러지며 가설과는 약간 다르게 큰 공원이 있는 하이드 파크에서도 크고 진하게 점이 보이면서 렌탈 건수가 많은 곳들을 확연하게 알 수 있습니다.
(12) 데이터 드리븐
데이터를 기반으로 Style에서 해당 필드에 함수를 적용합니다.
indentity | 각 필드의 데이터값 각각의 스타일링 값으로 사용합니다. |
catagorical | domin에 나열된 각 필드의 데이터값은 해당 범위의 해당 스타일 1:1로 매핑됩니다. |
interval | 데이터 값이 도메인에서 가장 가까운 값으로 내림된 후 범위 내의 해당 스타일로 스타일링됩니다. |
linear | 각 필드의 데이터 값이 도메인의 여러 값에 대하여 선형으로 보관 후 범위 내의 해당 스타일의 혼합으로 스타일이 지정됩니다. |
field | 스타일에 적용할 필드. 여기서는 CT (렌탈건수에 적용했습니다) |
domain | 스타일 규칙의 샘플 출력 값의 목록입니다. 범위의 값은 제어할 스타일 속성과 동일한 유형(색상 또는 숫자)이어야 합니다. 예를 들어 fillColor 속성 범위에는 색상만 포함해야 합니다. |
range | 도메인 범위에 따라 색깔을 지정할 수 있습니다. |