首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R包"RQGIS3“找不到proj.db

R包"RQGIS3“找不到proj.db
EN

Stack Overflow用户
提问于 2020-06-02 05:21:07
回答 1查看 520关注 0票数 1

当我尝试启动RQGIS3包时,R返回以下错误消息:"proj_create_from_database: Cannot find proj.db“

代码语言:javascript
复制
> library(reticulate)
> library(RQGIS3)
> set_env(root="C:/Program Files/QGIS 3.12")
$root
[1] "C:/Program Files/QGIS 3.12"

$qgis_prefix_path
[1] "C:/Program Files/QGIS 3.12/apps/qgis"

$python_plugins
[1] "C:/Program Files/QGIS 3.12/apps/qgis/python/plugins"

$platform
[1] "Windows"

> open_app()
proj_create_from_database: Cannot find proj.db
proj_create_from_database: Cannot find proj.db

然而,PROJ_LIB确实存在...

代码语言:javascript
复制
> Sys.getenv("PROJ_LIB")
[1] "C:/Program Files/QGIS 3.12/share/proj;C:/Users/toto/Documents/R/win-library/3.6/rgdal/proj"

如果你能帮助我,我将不胜感激。提前谢谢你。

如果有帮助,下面是关于我的R会话的信息:

代码语言:javascript
复制
> sessionInfo()
R version 3.6.3 (2020-02-29)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 8.1 x64 (build 9600)

Matrix products: default

locale:
[1] LC_COLLATE=French_France.1252  LC_CTYPE=French_France.1252    LC_MONETARY=French_France.1252 LC_NUMERIC=C
[5] LC_TIME=French_France.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] RQGIS3_1.0.1.9000 reticulate_1.16

loaded via a namespace (and not attached):
[1] Rcpp_1.0.4.6       rstudioapi_0.11    raster_3.1-5       magrittr_1.5       units_0.6-6        hms_0.5.3          lattice_0.20-38
[8] R6_2.4.1           rlang_0.4.6        stringr_1.4.0      tools_3.6.3        parallel_3.6.3     rgdal_1.5-8        grid_3.6.3
[15] KernSmooth_2.23-16 e1071_1.7-3        DBI_1.1.0          class_7.3-15       ellipsis_0.3.1     tibble_3.0.1       lifecycle_0.2.0
[22] crayon_1.3.4       sf_0.9-3           Matrix_1.2-18      readr_1.3.1        vctrs_0.3.0        codetools_0.2-16   sp_1.4-2
[29] stringi_1.4.6      compiler_3.6.3     pillar_1.4.4       classInt_0.4-3     jsonlite_1.6.1     pkgconfig_2.0.3
EN

回答 1

Stack Overflow用户

发布于 2020-07-05 17:15:42

我不是这里的R开发人员,但我在使用C#时遇到了同样的问题,这里似乎可以解决这个问题

代码语言:javascript
复制
Osr.SetPROJSearchPath(Environment.GetEnvironmentVariable("PROJ_LIB"));

查看是否存在R的等价物

似乎有些东西,也许你可以从中找出更多的意义。

代码语言:javascript
复制
get_proj_search_paths <- function() {
    if (PROJis6ormore()) {
        res <- .Call("get_proj_search_path", PACKAGE="rgdal")
        res <- strsplit(res, .Platform$path.sep)[[1]]
    } else {
        res <- NULL
    }
    res
}

set_proj_search_paths <- function(paths) {
    if (PROJis6ormore()) {
        stopifnot(!missing(paths))
        stopifnot(is.character(paths))
        stopifnot(length(paths) > 0)
        n <- length(paths)
        for (i in 1:n) stopifnot(dir.exists(paths[i]))
        res <- .Call("set_proj_paths", paths, PACKAGE="rgdal")
    } else {
        res <- NULL
    }
    res
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62141199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档