我正在尝试在数据框架中使用函数get_elevation_points,但请继续遇到相同的错误:
谢谢!
> #get the API key : et an API Key from https://mapzen.com/developers. Since elevatr will search the environment for the appropriate key,
> #it is suggested that you store this in your .Renviron file. To do this:
>
> require(sf)
require(sp)
>
> cat("mapzen_key=mapzen-XXXXXXXn", file =
> file.path(normalizePath("~/"), ".Renviron"),
> append = TRUE) mydata <- st_as_sf(x = Coordinates_alt,
> coords = c("Longitude", "Latitude"),
> crs = "+proj=longlat +datum=WGS84")
>
> coordinates(Coordinates_alt) <- cbind(Coordinates_alt$Longitude ,
> Coordinates_alt$Latitude) proj4string(Coordinates_alt) =
> CRS("+proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0")
>
> require(elevatr)
>
> prj_dd <- "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs"
>
> mydata1 <- SpatialPointsDataFrame(df, proj4string = CRS(prj_dd), data
> = df)
>
> head(mydata1)
>
> df_elev <- get_elev_point(mydata1, prj = prj_dd, src = "mapzen")
df_elev&lt; - get_elev_point(df,prj = prj_dd,src =" mapzen"(错误 位置$高程[IDX_S [i]:idx_e [i]] 替换的长度为零:警告消息:src'mapzen' 被弃用,并将在 2018-01-31由于MAPZEN关闭而导致;将" EPQ"改为我们 位置。仍在寻找全球高程服务 替换。
对不起,延迟了响应。我对此并不活跃,但是考虑到我会的一些elevatr
问题!
您遇到的问题是src = "mapzen"
是一个旧来源,因为所有MAPZEN服务都已关闭。如果您的坐标在美国,则可以使用src = "epqs"
,如果它们在美国以外,则可以使用src = "aws"
,但取决于可能需要一些时间的边界框的多少点和程度。另请确保读取elevatr::get_elev_point()
的文档,因为其中还有一些有关设置aws
源的Z值的其他信息。诸如elevatr::get_elev_point(mydata1, prj = prj_dd, src = "aws", z = 5)
之类的东西会很快(ISH(,但是源栅格数据的分辨率很粗糙。您可以更改z(最多14(,但更高的值将根据坐标的范围增加下载时间。