gpt4 book ai didi

r - CPL_transform(x,crs,aoi,管道,反向)中的错误: OGRCreateCoordinateTransformation() returned NULL: PROJ available?

转载 作者:行者123 更新时间:2023-12-03 16:08:21 28 4
gpt4 key购买 nike

我正在使用ubuntu 18.04,以下代码生成错误

library(sf)
library(tmap)
library(dplyr)
library(raster)
#sudo apt install libproj-dev
#devtools::install_github("robinlovelace/geocompr")
library(spDataLarge)
if(!file.exists("e.tif"))
download.file("https://github.com/geocompr/geocompkg/releases/download/0.1/e.tif",
"e.tif")
elev = raster("e.tif")
urban = spData::urban_agglomerations %>%
filter(year == 2030) %>%
dplyr::select(population_millions)
summary(urban)

tm_shape(elev) +
tm_raster(breaks = c(-10000, 0, 10, 50, 100, 10000)) +
tm_shape(urban) +
tm_dots(size = "population_millions", scale = 0.5)

我收到以下错误
Error in CPL_transform(x, crs, aoi, pipeline, reverse) : 
OGRCreateCoordinateTransformation() returned NULL: PROJ available?
In addition: Warning message:
In CPL_transform(x, crs, aoi, pipeline, reverse) :
GDAL Error 1: No PROJ.4 translation for source SRS, coordinate transformation initialization has failed.

如果我使用更新PROJ
sudo apt-get install proj-bin

它说我有最新版本
proj-bin is already the newest version (5.2.0-1~bionic0).

任何帮助,将不胜感激。

最佳答案

感谢sf的开发人员,我现在知道了解决方案(和问题):

See the github issue here

回顾:

  • 如果您使用较新版本的GDAL保存sf数据帧,然后在具有较旧版本GDAL的系统上尝试st_transform,则无法正确读取投影信息(至少在Ubuntu 18附带的版本中-也是我遇到这个问题的地方)。
  • 解决方案是重新设置投影:
  • st_crs(data) <- 4326  # or whatever projection your data is in

    如果您有多个几何列,则可能需要单独设置:
    st_crs(data$areacolumn) <- 4326

    关于r - CPL_transform(x,crs,aoi,管道,反向)中的错误: OGRCreateCoordinateTransformation() returned NULL: PROJ available?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61286108/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com