La question ici n’est pas de savoir exactement comment tracer des cartes avec R, car j’ai déjà trouvé un bel exemple ici , mais plutôt comment le faire fonctionner. En fait, je ne peux pas charger la bibliothèque rgdal
:
library(rgdal)
Error in library(rgdal) : there is no package called ‘rgdal’
Cependant, lorsque j'essaie d'installer manuellement le paquet ci-dessus, j'obtiens le message d'erreur suivant:
....
configure: error: proj_api.h not found in standard or given locations.
ERROR: configuration failed for package ‘rgdal’
* removing ‘/home/eualin/R/i686-pc-linux-gnu-library/2.15/rgdal’
Warning in install.packages : installation of package ‘/home/eualin/Downloads/rgdal_0.8-5.tar.gz’ had non-zero exit status
Toute entrée est la bienvenue!
Si vous regardez la page package sur CRAN , vous verrez ce qui suit:
SystemRequirements: pour la construction à partir de la source: GDAL> = 1.7.1 bibliothèque de http://trac.osgeo.org/gdal/wiki/DownloadSource et PROJ.4 (proj> = 4.4.9) de http://trac.osgeo.org/proj/ ; Les infrastructures GDAL OSX créées par William Kyngesburye sur http://www.kyngchaos.com/ peuvent être utilisées pour la source s’installe sur OSX.
Comme vous semblez être sous Linux, vous construisez toujours le paquet à partir du source. Vous devrez donc installer les bibliothèques correspondantes sur votre système. Si vous êtes sous Mint, Ubuntu ou un autre dérivé de Debian, vous pouvez faire:
$ Sudo apt-get install libgdal1-dev libproj-dev
Un conseil qui peut être utile, toujours sous un système basé sur Debian, consiste à installer le paquetage apt-file
et à exécuter:
$ Sudo apt-file update
Ensuite, lorsque vous obtenez une erreur telle que:
configure: error: proj_api.h not found in standard or given locations.
Vous pouvez utiliser la commande suivante pour rechercher le package à installer pour obtenir le fichier manquant:
$ apt-file search proj_api.h
libproj-dev: /usr/include/proj_api.h
Si vous utilisez OS X avec le gestionnaire de paquets Homebrew et que R est installé via le robinet homebrew-science , vous pouvez installer rgdal en installant d'abord gdal.
brew install gdal
Vous voudrez peut-être d’abord énumérer les options disponibles avant de l’exécuter si vous voulez quelque chose de fantaisie comme le support postgresql. Pour voir le type d'options disponibles
brew options gdal
alors pour être chic, vous pouvez taper
brew install --with-postgresql gdal
après un certain temps, vous devriez être prêt à utiliser des dépendances, puisque proj, y compris votre nécessaire proj_api.h sont des dépendances! Malheureusement, rgdal ne trouve toujours pas pro_api.h car il ne cherche pas dans/usr/local/include. Pour résoudre ce problème et d’autres maladies possibles avec votre installation de rgdal, utilisez la commande suivante R pour installer rgdal:
> install.packages('rgdal', type = "source", configure.args=c('--with-proj-include=/usr/local/include','--with-proj-lib=/usr/local/lib'))
Cela devrait être similaire à ce dont vous auriez également besoin pour MacPorts à l'exception des étapes de préparation, et vos bibliothèques/en-têtes se trouvent probablement sous "/ opt/local/lib" et "/ opt/local/include" respectivement.
Remarque: pour préparer les versions améliorées} si vous utilisez "--with-armadillo" comme option avec gdal et que vous avez mis à niveau le tatou à la version 7 à partir de 6. Vous devrez recompiler gdal avant la mise à niveau/réinstallez rgdal.
Sur un système Fedora 21 utilisant R-3.2.0, les éléments suivants ont fonctionné:
yum install gdal.x86_64 gdal-devel.x86_64 gdal-libs.x86_64
yum install proj.x86_64 proj-devel.x86_64
yum install proj-epsg.x86_64 proj-nad.x86_64
Évidemment, c'était le résultat d'essais répétés pour obtenir:
install.packages("rgdal")
travailler. Vous pouvez probablement tout faire en une seule installation.
Sur Ubuntustudio 14.04 (identique pour toutes les distributions Debian):
Sudo apt-get install libproj-dev libgdal-dev
Ensuite, je pourrais installer le paquet rgdal
R info:
R version 3.0.2 (2013-09-25) -- "Frisbee Sailing"
Linux info:
Linux francois-K53SV 3.13.0-34-lowlatency #60-Ubuntu SMP PREEMPT Wed Aug 13 16:15:18 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Sous OSX, je télécharge proj de http://www.kyngchaos.com/software/frameworks et j'exécute la commande suivante dans R.
install.packages('rgdal', type = "source", configure.args=c('--with-proj-include=/Library/Frameworks/PROJ.framework/Headers', '--with-proj-lib=/Library/Frameworks/PROJ.framework/unix/lib'))
Cela a fonctionné pour moi:
install.packages('rgdal',repos="http://www.stats.ox.ac.uk/pub/RWin")
Pour les personnes travaillant dans des environnements multi-utilisateurs avec plusieurs versions de proj installées (à partir des sources), j'ai utilisé la méthode suivante:
install.packages('rgdal',configure.args="--with-proj-include=/sw/proj/4.9.2/include --with-proj-lib=/sw/proj/4.9.2/lib")
Pour moi (Ubuntu 16.04, R 3.4.2), un mélange des solutions ci-dessus a fonctionné:
Sudo apt-get install libudunits2-dev libgdal-dev libgeos-dev libproj-dev
Ensuite, installez simplement rgdal
à partir de CRAN.
La seule chose qui a fonctionné sur mon système a été de compiler PROJ4 à partir de la source telle que décrite ici puis d’installer le paquetage rgdal en tant que
install.packages("rgdal")
Pour les utilisateurs de Mac (OS.X Version 10.12.6), cela a fonctionné pour moi. Tout d’abord, allez à la ligne de commande et installez gdal en utilisant >> brew install gdal
En second lieu, allez à Rstuduio (console R) et installez le paquet en utilisant install.packages("rgdal")
Pour Ubuntu 16.04 et R 3.5.1, cela fonctionne assez vite:
Sudo add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable
Sudo apt update
Sudo apt install gdal-bin python-gdal python3-gdal libgdal1-dev
Ensuite;
Sudo apt-get install libudunits2-dev libgdal-dev libgeos-dev libproj-dev
Enfin en CRAN;
install.packages("rgdal")
Pour résoudre ce problème, vous devez install libgdal-dev:
$ Sudo apt install libgdal-dev
Aucune des réponses ci-dessus n'a fonctionné pour moi (exécuter R 3.5.1 sur Linux Mint 17.1). La version de GDAL dans les référentiels Ubuntu est 1.11.3, ce qui entraîne l’échec de l’installation de rGDAL. Voici la solution qui a fonctionné pour moi (de this site web):
Sudo apt-get install libexpat1-dev
Téléchargez et installez GDAL
wget http://download.osgeo.org/gdal/2.1.1/gdal-2.1.1.tar.gz
tar xvf gdal-2.1.1.tar.gz
cd gdal-2.1.1
./configure
Sudo make
Sudo make install
Vérifier la version
gdal-config --version
J'ai ensuite eu cette erreur:
** testing if installed package can be loaded
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/usr/local/lib/R/site-library/rgdal/libs/rgdal.so':
libgdal.so.20: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
Ceci a été corrigé en mettant à jour les liaisons:
Sudo ldconfig
Ensuite, exécuter install.packages("rgdal")
dans R a bien fonctionné.
Impossible d’installer correctement rgdal, j’ai essayé toutes les suggestions et toutes les suggestions ici R ne trouve pas le paquet même après l’installation du paquet
library(rgdal)
rgdal: version: 1.4-3, (SVN revision 828)
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 2.2.3, released 2017/11/20
Path to GDAL shared files: C:/Users/xxx/Documents/R/win-library/3.4/rgdal/gdal
GDAL binary built with GEOS: TRUE
Loaded PROJ.4 runtime: Rel. 4.9.3, 15 August 2016, [PJ_VERSION: 493]
Path to PROJ.4 shared files: C:/Users/xxx/Documents/R/win-library/3.4/rgdal/proj
Linking to sp version: 1.3-1
Warning message:
package ‘rgdal’ was built under R version 3.4.4
J'ai mis à jour mon R à 3.6.1
Réessayer:
batch_gdal_translate(x, desc, outsuffix = "4.img", of = "HFA", co="TILED=YES")
NULL
Warning messages:
1: In gdal_setInstallation() :
No GDAL installation found. Please install 'gdal' before continuing:
- www.gdal.org (no HDF4 support!)
- www.trac.osgeo.org/osgeo4w/ (with HDF4 support RECOMMENDED)
- www.fwtools.maptools.org (with HDF4 support)
2: In gdal_setInstallation() : If you think GDAL is installed, please run:
gdal_setInstallation(ignore.full_scan=FALSE)
j'ai essayé d'exécuter ceci à partir de Rstudio et de la ligne de commande R 3.6.1 GUI.
chaque fois que j'ai essayé cela, j'obtiens des résultats positifs pour les bibliothèques installées.
library(raster)
Loading required package: sp
library(rgdal)
rgdal: version: 1.4-4, (SVN revision 833)
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 2.2.3, released 2017/11/20
Path to GDAL shared files: C:/Users/xxx/Documents/R/R-3.6.1/library/rgdal/gdal
GDAL binary built with GEOS: TRUE
Loaded PROJ.4 runtime: Rel. 4.9.3, 15 August 2016, [PJ_VERSION: 493]
Path to PROJ.4 shared files: C:/Users/xxx/Documents/R/R-3.6.1/library/rgdal/proj
Linking to sp version: 1.3-1
library(gdalUtils)
Registered S3 method overwritten by 'R.oo':
method from
throw.default R.methodsS3
les fichiers que j'essaye de lire sont des fichiers dted?
x <- list.files(path = src, pattern = ".dt", full.names = TRUE)
length(x)
batch_gdal_translate(x, desc, outsuffix = "4.img", of = "HFA", co="TILED=YES")
J'ai également essayé ce qui précède avec le format .tif GTIFF et j'obtiens la même erreur. Mais je n'essaie pas de lire les fichiers .hdf, mais seulement les fichiers .dt0, .dt1, .dt2
cela fonctionnera sur une autre machine sur laquelle R est installé, cependant, j'essaie de comprendre ce qui ne va pas avec l'installation que j'ai sur "cette" machine.