首页 > 解决方案 > make_EPSG = PROJ 6 数据库为空

问题描述

我试图检索 EPSG 数据,但它显示此错误

> library(rgdal)
> EPSG<-make_EPSG()
Error in make_EPSG() : PROJ 6 database empty

我尝试使用包中的 if 参数进行更改,但似乎不起作用:

> EPSG <- try(make_EPSG())
Error in make_EPSG() : PROJ 6 database empty
> if (!inherits(EPSG, "try-error")) attr(EPSG, "metadata") 
> EPSG
[1] "Error in make_EPSG() : PROJ 6 database empty\n"
attr(,"class")
[1] "try-error"
attr(,"condition")
<simpleError in make_EPSG(): PROJ 6 database empty>

知道如何使它工作吗?

标签: rcoordinate-systemsepsg

解决方案


在寻找解决方案一段时间后,我解决了同样的问题。

  • 1.- 卸载所有 R & RStudio。
  • 2.- 手动删除所有与 R 相关的文件夹(在用户/文档中......)
  • 3.- 安装 R-3.6.3。请不要安装 RStudio 3.- 像往常一样从 R(不是 RStudio)安装 rgdal、rgeos 和 sf 包
  • 4.- 在 R 终端中执行“update.packages(ask = FALSE, checkBuilt = TRUE)”
  • 5.- 安装 RStudio(为我的 RStudio-1.3.1093 工作)
  • 6.- 运行 RStudio 并加载 rgdal 库。现在尝试执行 make_EPSG()。为我工作。

最后......当调用 CSR 时不要使用 CRS('init': 'epsg:4326') 使用 CRS(SRS_string = 'EPSG:4326') 代替。


推荐阅读