Я использую ggmap пакета R.
?get_map
говорит:
местоположение: адрес, долгота/широта (в указанном порядке) или левый/нижний/правый/верхний ограничивающий прямоугольник
Мой код:
library(ggmap)
library(mapproj)
lat_bottom = 52.33 # bottom latitude of Berlin
lat_top = 52.5 # top latitude of Berlin
lon_left = 13.0 # left longitude of Berlin
lon_rigth = 13.95 # right longitude of Berlin
mymap <- get_map(location = c(lon_left,lat_bottom,lon_rigth,lat_top),
source="google")
ggmap(mymap)
Почему это дает мне предупреждение:
Предупреждение: ограничивающая рамка для google - только пространственная протяженность приблизительны. преобразование ограничивающей рамки в центр/масштабирование. (Экспериментальный)
Означает ли это, что мне не удается создать карту с этими точные углы?
Основываясь на приведенном ниже совете, я пробовал это:
lat_bottom = 52.33 # bottom latitude of Berlin
lat_top = 52.68 # top latitude of Berlin
lon_left = 13.08 # left longitude of Berlin
lon_rigth = 13.77 # right longitude of Berlin
mylon = c(lon_left,lon_rigth)
mylat = c(lat_bottom,lat_top)
mymap <- get_map(location = c(lon = mean(mylon), lat = mean(mylat)),
maptype = "roadmap", source = "google", zoom=11) # using zoom
ggmap(mymap)
foo<-ggmap(mymap)+
scale_x_continuous(limits = c(lon_left,lon_right), expand = c(0, 0)) +
scale_y_continuous(limits = c(lat_bottom,lat_top), expand = c(0, 0))
foo
Все выглядит нормально. Но когда я беру другие координаты (те, которые ближе друг к другу), например, как показано ниже - тогда карта выглядит странно - она немного смещается влево на сером фоне...
lat_bottom = 52.35 # new bottom
lat_top = 52.50 # new top
lon_left = 13.2 # new left
lon_rigth = 13.5 # new right