Questions tagged «polygon»

在地图上,由x,y坐标对的连接序列定义的闭合形状,其中第一个和最后一个坐标对是相同的,而其他所有坐标对都是唯一的。

3
使用ArcGIS Desktop在多边形内填充多边形?
我有一个布尔栅格。 在栅格的灰色区域,我想在一个连续范围内拟合给定大小的多边形。 基本上,我有一个不规则多边形,我想在不规则多边形的范围内尽可能多地“拟合”一个已知多边形。 多边形的方向无关紧要,它可以是正方形。我希望它适合图形显示,但是如果它只是将一个数字附加到多边形(适合的#号)上也可以。 我正在使用ArcGIS Desktop 10。

1
如何更改SpatialPolygons对象的多边形填充颜色和边框颜色?
我有要绘制的SpatialPolygons或SpatialPolygonsDataFrames。如何使用R中的三种绘图系统(基本图形,点阵图形和ggplot2)更改颜色? 示例数据: library(sp) Srs1 = Polygons(list(Polygon(cbind(c(2,4,4,1,2),c(2,3,5,4,2)))), "s1") Srs2 = Polygons(list(Polygon(cbind(c(5,4,2,5),c(2,3,2,2)))), "s2") SpDF <- SpatialPolygonsDataFrame( SpatialPolygons(list(Srs1,Srs2)), data.frame( z=1:2, row.names=c("s1","s2") ) ) spplot(SpDF, zcol="z")
25 polygon  r 


1
获取TopologyException:输入几何1无效,这是由于R中的自相交导致的?
由无效的多边形几何形状引起的“ TopologyException:输入几何1无效”自相交错误已得到广泛讨论。但是,我没有在网络上找到仅依赖于R功能的便捷解决方案。 例如,我已经设法从map("state", ...)遵循Josh O'Brien 在这里的好答案的输出中创建一个“ SpatialPolygons”对象。 library(maps) library(maptools) map_states = map("state", fill = TRUE, plot = FALSE) IDs = sapply(strsplit(map_states$names, ":"), "[[", 1) spydf_states = map2SpatialPolygons(map_states, IDs = IDs, proj4string = CRS("+init=epsg:4326")) plot(spydf_states) 现在,这种广泛应用的数据集的问题在于自相交发生在以下给定的点。 rgeos::gIsValid(spydf_states) [1] FALSE Warning message: In RGEOSUnaryPredFunc(spgeom, byid, "rgeos_isvalid") : Self-intersection at or near point …

2
使用线(而不是点)作为输入要素来创建蒂森(Voronoi)多边形?
我在特定的多边形边界内有一组线要素。对于每条线,我想生成一个多边形,在该多边形内,每个可能的点比该层中的任何其他线更靠近给定的线。过去,我已经使用Delaunay三角剖分对点输入要素进行了此操作,但是如果使用线要素进行相似的处理,则无法找到它。 ETA:我想到了Geogeek的解决方案,但是在较直的部分中,输入线的顶点较少,因此产生的多边形太接近(甚至重叠)了一条本不应该的线。在这里,红线是我的输入,您可以看到顶点和从中生成的Thiessen多边形。 也许一种快速且(非常)肮脏的解决方案可能是将每条线转换为一组均匀间隔的点(而不是仅线的顶点),从这些点生成蒂森多边形,然后根据原始线ID分解它们。

3
如何加快R中多边形的绘制速度?
我想在描绘一些变量的栅格图像上绘制北美的国界,然后使用R在轮廓上方覆盖轮廓。我已经成功使用基本图形和点阵进行了此操作,但似乎绘制过程是太慢了!我还没有在ggplot2中完成此操作,但是我怀疑它在速度方面会更好。 我将数据保存在从grib文件创建的netcdf文件中。现在,我下载了加拿大,美国和墨西哥的国家边界,这些边界可以从GADM的RData文件中获得,这些文件作为SpatialPolygonsDataFrame对象读入R。 这是一些代码: # Load packages library(raster) #library(ncdf) # If you cannot install ncdf4 library(ncdf4) # Read in the file, get the 13th layer # fn <- 'path_to_file' r <- raster(fn, band=13) # Set the projection and extent p4 <- "+proj=lcc +lat_1=50.0 +lat_2=50.0 +units=km +x_0=32.46341 +y_0=32.46341 +lon_0=-107 +lat_0=1.0" projection(r) <- …
24 polygon  r 

1
使用QGIS对多个栅格图层进行聚类以创建子区域?
我试图根据一堆重叠栅格图层(物理图层,例如:深度,电流,波浪)的聚类分析,从多边形创建n个子区域。 当前,我可以在多边形上创建规则的网格,然后从物理栅格图层中提取物理属性(例如:Gridspot或等效工具),然后运行仅限于n个聚类的聚类分析(在R或其他统计数据包中)。 然后,我可以识别每个群集组,然后将它们重新绘制到GIS(QGIS或ArcMap)中。但是,我设想某些群集组将分散(空间离群值并且没有意义),而有些群集将聚集(值得成为一个子区域)。 然后,我可以手动绘制代表性块以创建n个子区域。 是否有可以在QGIS中运行的工具如ArcMap 10.1 分组分析?我只运行10.0。 是否有更好的方法建议对多个栅格图层进行聚类分析,以创建n个子区域(生物区域)?

3
一般GIS中多边形顶点的顺序:顺时针或逆时针
两天前,我问了一个关于ESRI shapefile中多边形顶点的内部存储顺序的问题。回答了该问题(将多边形按顺时针还是逆时针存储在shapefile中?),并且在旧帖子中也回答了该问题(创建多边形(是否顺时针旋转)) 但是现在我的问题更笼统了,我不知道它是否有唯一的答案。顺时针顺序仅适用于ESRI shapefile还是通用GIS格式?GIS软件的内部表示又如何呢?例如,如果我使用QGIS,并且读取了一个包含多边形的* .shp,我认为外边界​​的内部表示形式是与原始shapefile中一样的顺时针方向,但是QGIS支持的所有文件格式又如何呢?对于ArcGIS?并且如果存在一种文件格式,该文件格式具有以逆时针方向存储的多边形,则如果这些文件加载​​到QGIS,ArcGIS等中,则内部会改变方向,因此,例如,如果我使用PyQGIS读取数据,则多边形是顺时针的下令? 我的目的是为QGIS编写插件,但数据源可以是ESRI shapefile或其他格式。由于需要使用多边形的方位角检查多边形的连续边之间的角度,因此需要知道顺序是否为顺时针。一种解决方案是计算每个多边形的面积,如果我没记错的话,如果它为正,则顺序为顺时针,如果为负,则顺序为逆时针。 区域计算不是一项繁重的任务,因此不会使我的插件变慢。但是在QGIS的特殊情况下,有人知道它是否按顺时针或逆时针方向存储多边形,而不管原始源中的顺序如何?到目前为止,我正在使用ESRI shapefile,并且layer.getFeatures()。geometry()。asPolygon()中的坐标按顺时针方向存储为外部边界,按逆时针方向存储为孔,即与原始的* .shp相同。

2
如何在Python中读取shapefile?
我的问题是多边形shapefile中垂直线的扩展。请先参考该问题。 您将看到的是一种以用户定义的间距相对于边界框生成垂直线的方法。我知道OGR,Fiona,Shapely等可用于下一步剪切,但我不了解它们的使用情况。 如何读取多边形shapefile的一行?每个使用Shapely的应用程序都显示了如何生成LineString,Point或Polygon,但是从不读取现有shapefile 请至少为我提供一个骨架结构,以便我可以在其上进行构建。

4
正确的方法来绑定具有相同多边形ID的SpatialPolygonsDataFrames?
ID重叠时,将SPDF绑定在一起的正确习惯用法是什么?请注意,在这里(通常是这样),ID基本上是没有意义的,所以我不能仅使rbind忽略它们就很烦人了。 library(sp) library(UScensus2000) library(UScensus2000tract) data(state) # for state names states <- gsub( " ", "_", tolower(state.name) ) datanames <- paste(states,"tract", sep=".") data( list=datanames ) lst <- lapply(datanames,get) nation <- do.call( rbind, lst ) Error in validObject(res) : invalid class “SpatialPolygons” object: non-unique Polygons ID slot values # This non-exported function …
22 polygon  r 

2
在R中不使用shapefile的情况下实例化空间多边形
因此,我们在R中读取shapefile的通常方法是通过maptools包,如下所示: sfdata <- readShapeSpatial("/path/to/my/shapefile.shp", proj4string=CRS("+proj=longlat")) 但是,我有一个用例,其中没有shapefile.shp,而是有一系列多边形坐标 16.484375 59.736328125,17.4951171875 55.1220703125,24.74609375 55.0341796875,22.5927734375 61.142578125,16.484375 59.736328125 及其对应的投影 coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 如何直接从该数据“实例化” sfdata(将是“多边形对象”)?(无需以round回的方式使用这些数据创建shapefile,然后从新创建的shapefile中读取)
22 shapefile  polygon  r 


3
通过QGIS中的“公共属性”字段合并/溶解多边形?
我已将相应的“本地企业合作伙伴”表数据连接到包含UK Local Authority的多边形shapefile中。 如屏幕截图所示,如何溶解或合并LEP_NAME的“本地权限”多边形? 理想情况下,我想保留带有合并后的多边形的“本地权限”属性。我的脚本知识为零,因此我正在寻找基于工具的解决方案。任何帮助或指针,不胜感激。 附加说明:尝试使用溶解工具时,LEP_NAME字段不可用,如上所示。LEP属性数据是在Excel中创建的,另存为CSV格式,并已加入到Local Authority多边形shapefile中。如其他屏幕快照所示,有重复的IDENTIFI0字段-这可能是问题的根源吗?

11
QGIS中的ID列是否有一种auto_increment的方法
我正在创建虚拟地图,因此我需要创建许多点,线和确定的多边形。稍后,我将数据导出为geojson。但是在此之前,我必须离开并给每个元素一个唯一的ID。 我不需要特殊的排序,例如最大的多边形得到的ID最小。我只是需要所有多边形 与一个ID结尾,没有 做它手动像我现在要做的。 如果有人知道该怎么做会很棒。

3
如何找到凸多边形内的最大面积矩形?
在这篇文章中,我们正在寻找关于如何在凸多边形内找到最大面积矩形的算法 / 想法。 在下图中,数字是拟合矩形的面积。如图所示,期望的矩形可以在每个维度上变化并且可以成任何角度。 编辑: 正如我们在这里所问的那样,我们尚无明确的主意如何处理提到的问题。尽管如此,我们猜测最大面积矩形可能是其中一个边缘与多边形边缘对齐(当然不一定是相同长度的边缘)的边缘之一。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.