wmap <- readOGR(dsn="~/R/funwithR/data/ne_110m_land", layer="ne_110m_land")
Ce code ne charge pas le fichier de forme et une erreur est générée comme
Error in ogrInfo(dsn = dsn, layer = layer, encoding = encoding, use_iconv = use_iconv, :
Cannot open file
Je suis sûr que le répertoire est correct. À la fin/n'est pas là non plus et le nom du calque est également correct.
Dans le répertoire ne_110m_land, les fichiers que j'ai sont:
ne_110m_land.dbf
ne_110m_land.prj
ne_110m_land.shp
ne_110m_land.shx
ne_110m_land.VERSION.txt
ne_110m_land.README.html
Vous auriez pu montrer que vous avez le bon chemin avec:
list.files('~/R/funwithR/data/ne_110m_land', pattern='\\.shp$')
file.exists('~/R/funwithR/data/ne_110m_land/ne_110m_land.shp')
essayez peut-être:
readOGR(dsn=path.expand("~/R/funwithR/data/ne_110m_land"), layer="ne_110m_land")
ou une alternative plus simple qui s'enroule autour de cela:
library(raster)
s <- shapefile("~/R/funwithR/data/ne_110m_land/ne_110m_land.shp")
Pour moi, la commande a renvoyé l'erreur Cannot open layer
Lorsque j'ai inclus les balises dsn
et layer
.
Donc, quand je l'ai inclus tout comme readOGR('~/R/funwithR/data/ne_110m_land/ne_110m_land.shp')
cela a fonctionné.
Notez que mon fichier était un gjson, donc je ne l'ai vu qu'avec readOGR('~/R/funwithR/data/ne_110m_land/ne_110m_land.gjson')
Voici ce qui a fonctionné pour moi (avec un exemple réel)
require(rgdal)
shape <- readOGR(dsn = "1259030001_ste11aaust_shape/STE11aAust.shp", layer = "STE11aAust")
Les données exactes sont disponibles ici (téléchargez le fichier .Zip appelé 'State and Territory ASGC Ed 2011 Digital Boundaries in MapInfo Interchange Format')
Comme je l'ai commenté dans un autre article ( Erreur lors de l'ouverture du fichier de formes ), l'utilisation de file.choose () et la sélection manuelle aideront dans le cas où une sélection de fichier est nécessaire. Apparemment, il est lié aux fichiers de formes NaturalEarth