Буфер вокруг точки
Рассмотрим город Гома — столицу провинции Северное Киву в Конго, расположенную вблизи границы с Руандой. Её координаты: 1,66° ю. ш., 29,22° в. д. (объект Point уже задан в координатах UTM в переменной goma).
Сколько горнодобывающих объектов находится в радиусе 50 км от Гомы? И какова площадь национального парка в этой зоне? Давайте выясним это с помощью операции буфера. Помните, что расстояния должны быть выражены в единицах системы координат (в данном случае — в метрах).
Примечание: если у вас есть булева серия (например, как результат метода пространственных отношений), то количество значений True (то есть количество объектов, прошедших проверку) можно подсчитать, взяв сумму этих булевых значений — в таком случае True и False интерпретируются как единицы и нули.
Это упражнение является частью курса
Работа с геопространственными данными в Python
Инструкции к упражнению
- Создайте буфер радиусом 50 км вокруг
gomaи присвойте его переменнойgoma_buffer. - Проверьте, какие точки из
mining_sitesнаходятся внутри этого буфера, и сохраните результат в переменнуюmask. Подсчитайте количество таких объектов, взяв сумму булевой переменнойmask, и выведите результат на экран. - Вычислите пересечения национальных парков с буфером. Сложите площади этих пересечений и выведите результат в км².
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# goma is a Point
print(type(goma))
# Create a buffer of 50km around Goma
goma_buffer = ____
# The buffer is a polygon
print(type(goma_buffer))
# Check how many sites are located within the buffer
mask = ____
print(____)
# Calculate the area of national park within the buffer
print(national_parks.____ / (1000**2))