首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用maptools readShapePoly在R中打开SHP文件时出错

使用maptools readShapePoly在R中打开SHP文件时出错
EN

Stack Overflow用户
提问于 2013-05-17 11:09:08
回答 7查看 36.6K关注 0票数 18

我是R的新手,我在下面的教程中找到了ggplot2包,找到了这里。但是,每当我试图加载基本的shapefile时,readShapePoly()函数都会抛出一个错误。我使用了以下代码:

代码语言:javascript
复制
library("ggplot2")
library("gpclib")
library("maptools")
setwd("~/Documents/R Projects/Intro to ggplot2") 
#Intro to ggplot 2 contains the .shp file and associated data
sport <- readShapePoly("london_sport.shp")

这让我觉得:

代码语言:javascript
复制
Error in getinfo.shape(filen) : Error opening SHP file

我试过省略文件扩展名。我也尝试过下载其他.shp文件,这些文件也会引发同样的错误。我还尝试使用完整的文件路径调用readShapePoly,这也不起作用。我使用的是standard (mac ),但使用标准的R窗口也会出现同样的错误。我已经尝试过以前的关闭威胁“在Rstudio中打开SHP文件错误”的建议,但都没有效果。

编辑:错误与缺少的.dbf文件有关。感谢@Spacedman的修复.

EN

回答 7

Stack Overflow用户

发布于 2014-03-24 22:35:30

我也遇到了类似的问题,这是因为我下载的压缩包中除了“*.shp”形状文件之外还有其他几个文件。然后,我只将形状文件移动到另一个文件夹,但它没有工作。当将所有文件放在一起时,这是很好的,我可以readShapeSpatial()函数正常。

票数 16
EN

Stack Overflow用户

发布于 2013-05-17 13:10:46

忘记ggplotgpcclib吧。坚持使用maptoolsrgdal,它们实际上提供了读取shapefile的工具。

不要只是说你已经试过“这个和那个”,概述细节。例如,`file.exists("london_sport.shp")是否返回TRUE?

此外,是什么使您认为readShapePoly()是正确的函数呢?它只知道如何读取多边形形状文件,也可以尝试readShapePoints()readShapeLines()

如果可以,可以尝试readOGR,它可以读取shapefile,尽管有很多警告(包括几何图形类型)。

代码语言:javascript
复制
library(rgdal)
readOGR("~/Documents/R Projects/Intro to ggplot2", "london_sport")

如果你能报告所有这些事情,很可能有人能帮上忙。

票数 6
EN

Stack Overflow用户

发布于 2015-12-03 19:23:32

还有一个,但不是太多的自动解决方案,帮助了我:

代码语言:javascript
复制
file<- readShapePoly(file.choose())

然后找到您的*.shp文件并运行它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16607532

复制
相关文章

相似问题

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