안녕하세요? 이번 글은 Google Earth Engine(구글 어스 엔진)에서 WDPA(세계 보호지역 데이터베이스) 데이터셋을 불러오는 방법을 정리해 보겠습니다.
먼저 ee와 geemap 패키지를 호출하고 GEE를 초기화합니다.
import ee
import geemap
# GEE 초기화
ee.Initialize()
WDPA 데이터셋을 불러옵니다.
# WDPA 데이터셋 불러오기
wdpa = ee.FeatureCollection("WCMC/WDPA/current/polygons")
ID를 통해 원하는 WDPA 경계를 선택합니다. 여기서는 변산반도국립공원 경계를 선택해 보겠습니다.
wdpa_id = 30712 # 해당 ID를 가진 WDPA 경계 선택
protected_area = wdpa.filter(ee.Filter.eq('WDPAID', wdpa_id))
선택된 보호지역의 이름을 출력해 봅니다.
# 선택된 보호지역의 이름 가져오기
area_name = protected_area.first().get('NAME').getInfo()
print("Name:", area_name)
Name: Byeonsanbando
Map 변수에 지도 객체를 할당하고 지도의 너비, 높이, 기본 지도를 설정합니다.
# 지도 너비, 높이, 기본 지도 설정
Map = geemap.Map(width="800px", height="500px", basemap='Esri.WorldImagery')
참고로 사용 가능한 모든 기본 지도는 다음 코드를 통해 확인하실 수 있습니다.
# 사용 가능한 모든 기본 지도 출력
for basemap_name in geemap.basemaps:
print(basemap_name)
이제 이 레이어를 지도 객체에 추가하고 중심 설정 후 출력해 주면 되겠습니다.
Map.addLayer(protected_area, {'color': 'green'}, area_name) # 레이어 추가
Map.centerObject(protected_area, 12) # 지도의 중심 설정
Map # 지도 객체 출력
출력 결과는 다음과 같습니다. 동일한 방식으로 WDPA 데이터셋 중 원하는 보호지역 경계를 호출해 사용하실 수 있습니다.
import ee
import geemap
# GEE 초기화
ee.Initialize()
# WDPA 데이터셋 불러오기
wdpa = ee.FeatureCollection("WCMC/WDPA/current/polygons")
wdpa_id = 30712 # 해당 ID를 가진 WDPA 경계 선택
protected_area = wdpa.filter(ee.Filter.eq('WDPAID', wdpa_id))
# 선택된 보호지역의 이름 가져오기
area_name = protected_area.first().get('NAME').getInfo()
# print("Name:", area_name)
# 지도 너비, 높이, 기본 지도 설정
Map = geemap.Map(width="800px", height="500px", basemap='Esri.WorldImagery')
"""
# 사용 가능한 모든 기본 지도 출력
for basemap_name in geemap.basemaps:
print(basemap_name)
"""
Map.addLayer(protected_area, {'color': 'green'}, area_name) # 레이어 추가
Map.centerObject(protected_area, 12) # 지도의 중심 설정
Map # 지도 객체 출력