#r #geospatial #sf #sp #rgdal
#r #геопространственный #sf #sp #rgdal
Вопрос:
Я хотел бы создать пропорциональные ограничивающие рамки вокруг центроида независимо от широты / широты центроида. Я выяснил, как создать последовательно пропорциональные прямоугольные ограничивающие рамки вокруг центроида, просто добавляя и вычитая небольшое число из координат и используя проекцию, которая сохраняет форму.
Итак, теперь единственная проблема в том, что я не хочу использовать эту проекцию, я хочу проекцию, которая является более распространенной и узнаваемой для широкой публики. Если я использую что-то вроде EPSG: 4326, этот метод дает ограничивающие рамки разной формы в зависимости от широты. Есть ли способ создать ограничивающую рамку, которая не зависит от координат и имеет одинаковую форму независимо от широты?
#set parameters
city_name <- 'Paris'
zoom = .1
#get centroid to make box around
dat <- getbb(city_name, format_out ="data.frame", limit = 1)
dat <- dat[,c("lat","lon")]
cols.num <- c("lat","lon")
dat[cols.num] <- sapply(dat[cols.num],as.numeric)
#make bounding box
my_box <- rgeos::bbox2SP(n = (dat$lat zoom),
s = (dat$lat - zoom),
w = (dat$lon zoom),
e = (dat$lon - zoom),
proj4string = CRS(" proj=aea lat_1=29.5 lat_2=45.5 lat_0=37.5 lon_0=-96 x_0=0 y_0=0 ellps=GRS80 datum=NAD83 units=m no_defs"))
plot(my_box)
Комментарии:
1. Итак, вам нужна ограничивающая рамка фиксированного размера (в метрах) или фиксированной формы (в градусах)? Очевидно, что это не может быть и то, и другое.
2. @AllanCameron Я хочу, чтобы это была фиксированная форма с одинаковыми пропорциями при любом размере. Размер не имеет значения, я считаю, что я могу динамически настраивать что-то вроде того, что у меня есть в моем примере кода.
Ответ №1:
Я считаю, что центральная цилиндрическая проекция справилась бы с этой задачей, но, как предупреждение, это приводит к значительным искажениям, удаляющимся от экватора. Обычно вы можете найти ссылочный номер для проекционных систем здесь https://epsg.org/home.html , но я полагаю, что это EPSG: 4085.