从QGIS的图层中删除小的“盐和胡椒”多边形?


11

我有多个多边形组成,有几十万的地图非常小多边形内它。

我需要较大的多边形,但不需要较小的多边形。如何在保留较大多边形的同时选择并删除所有点的小多边形?(我显然不想手动执行此操作-有太多的要点!)

我对QGIS完全陌生,并且在Google上搜索过很多,没有运气。可能是因为我不确定Google搜索中使用的正确术语是什么!

我正在使用的文件是.dbf,.prj,.qpj,.shp和.shx。我只是将.shp文件拖到QGIS上,地图显示为一层。基本上,英国的地图分为多个区域(我想要),并以点数覆盖(不需要)。

地图检视 表格视图

这就是近距离的样子。我进行了一次观察,看看他们是否可以进入周围的环境,但是没有运气:

多边形的特写视图


4
看来您正在使用shapefile(.shp)。每个shapefile只能包含点,线或多边形之一。因此,您的一个(或多个)shapefile将包含英国区域(如多边形),而您的一个(或多个)shapefile将仅包含点。如果打开/关闭目录中的shapefile(旁边的复选框),则将看到每个文件中包含哪些数据。然后,您可以只删除包含这些点的文件。
Dan_h_b 2013年

1
谁创建了数据,或者您从哪里获得数据?看起来(基于图片)您的多边形中有孔。
HeikkiVesanto

1
我同意Vesanto的观点,即如果仅仅是一层,则可能是一个多边形层,其中有孔或很小的多边形。在这种情况下,您可以将它们与较大的多边形合并。例如,选择大多边形内的多边形,然后合并。您能否放大并提供地图上“点”的特写屏幕快照?
克里斯·P

1
您是否可以附加shp文件?
Dan_h_b 2013年

1
好的,所以我猜测您将拥有多部分多边形(基于属性表中只有17行的事实)。如果将数据分解成单个零件的多边形,最终将得到100个多边形。(“矢量”>“几何工具”>“多部分到单部分”)。然后,您应该能够根据面积进行选择(即选择非常小的面积)并删除它们以摆脱所有这些微小的多边形,或者以类似的方式,您应该能够将它们分解为它们掉落的任何大多边形中。
Dan_h_b 2013年

Answers:


22

似乎您正在使用军械测量代码点数据,这是英国和北爱尔兰邮政编码区域的数据集。

您所指的“点”是代表所谓“垂直街道”的小正方形多边形:一堆以上的邮政编码,不能使用“常规”多边形来表示(有关更多详细信息,请参见Andy Harfoot的评论) )。如果您需要分析受影响的邮政编码,则可能要三思而后行地删除这些多边形。

也就是说,这是删除这些多边形的方法:

  1. 通过单击“使用表达式选择要素”并输入,选择所有垂直街道多边形"POSTCODE" LIKE 'V%'。这将选择邮政编码以开头的所有V要素,即垂直街道。

  2. 正如您已经注意到的那样,简单地删除要素将无济于事,因为多边形会留下孔。相反,您可以使用“矢量/地理处理工具/消除条形多边形”将垂直街道与相邻的大多边形合并,将结果保存到新文件中。

  3. 您可能会收到警告消息,提示某些功能无法溶解,以及功能ID列表。如果还希望摆脱这些功能,请使用之前的表达式在新图层中选择垂直街道,然后执行以下操作之一:

    1. 如果需要自动解决方案,则可以将垂直街道与所有相邻的多边形合并。使用“图层/将选区另存为矢量文件”将选区保存到新图层,然后使用“矢量/研究工具/按位置选择”在合并图层中选择与有问题的垂直街道相交的要素,从而创建新选区。然后使用“矢量/地理处理工具/溶解”来溶解此选择,--- Dissolve all ---在“溶解字段”中进行选择。请注意,如果有问题的垂直街道位于其他两个多边形的边界上,或者在两个相邻的多边形内有令人讨厌的垂直街道,则此方法可能导致“适当”多边形的不希望的分解。

    2. 如果要避免溶解其他多边形,则可以手动选择垂直街道和一个相邻的多边形,注意不要选择两个相邻的多边形,然后如上所述进行溶解。


3
很好地演练了最初要求的OP的来源,风险,选择和流程!
RyanKDalton 2013年

1
次要点-垂直街道存在,其中垂直堆栈中包含多个邮政编码,从而阻止了它们在数据集中表示为“常规”多边形。这通常发生在住宅塔楼或办公楼中。提供了一个列表作为主代码点多边形数据集的伴随对象,该列表将垂直街道代码(从V开始)扩展为组成该列表的多个邮政编码。
Andy Harfoot

@AndyHarfoot:是的,谢谢您的澄清!我已编辑答案
杰克

太好了-谢谢。仅有一件事-我无法使用“表达式”或“向量”找到“选择要素” /地理处理工具/消除了条形多边形。我使用的是1.8.0里斯本。我需要升级吗?
Dazed和困惑的

2

尝试扭转您的方法。您是否尝试选择多边形并从该选择中创建新图层,而不是尝试选择和删除数千个点?如果您有手动删除所有点的方法,只需选择多边形要素并创建一个图层或导出它们,这将不会太繁琐。如果这些点是小的多边形(如其他人所评论),您仍然可以仅选择要保留并导出的多边形。

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.