R语言 在纬度/经度边界内打印Map

waxmsbnn  于 2023-01-28  发布在  其他
关注(0)|答案(1)|浏览(130)

我尝试使用ggmap绘制一个更广阔的印度洋Map。我选择了不同的纬度/经度,我想形成我的Map的角落。然而,当我尝试用R绘制Map时,它产生了一个所有大陆的Map,而不仅仅是我想绘制的区域。上面的Map是代码输出的内容,我已经在红框中突出显示了我希望绘制的区域。
这是我尝试的代码:

bbox <- make_bbox(lon = data$Longitude, lat = data$Latitude, f=1)
map <- get_map(location = bbox, source = "google", maptype = "satellite")
plot <- ggmap(map)

数据:

structure(list(Latitude = c(18.682744, -27.706318, 17.65651, 
-21.006735), Longitude = c(46.252432, 43.179057, 100.89364, 104.064258
)), class = "data.frame", row.names = c(NA, -4L))
fhity93d

fhity93d1#

你的值f=1,是一个太大的分数,这是膨胀的大小的Map。

data<-structure(list(Latitude = c(18.682744, -27.706318, 17.65651, 
                        -21.006735), Longitude = c(46.252432, 43.179057, 100.89364, 104.064258
                        )), class = "data.frame", row.names = c(NA, -4L))

bbox <- make_bbox(lon = data$Longitude, lat = data$Latitude, f=1)
bbox
 #left    bottom     right       top 
 #-17.70614 -74.09538 164.94946  65.07181

如果你看你的边界框,从上到下是从北纬65度到南纬-74度。
如果将贴图大小设置为f=0.05(默认值),则更易于管理。

bbox <- make_bbox(lon = data$Longitude, lat = data$Latitude, f=0.05)
box

#    left    bottom     right       top 
#40.13480 -30.02577 107.10852  21.00220

现在,长方体的纬度从北纬21度更改为南纬-30度,更接近您所需的大小。

相关问题