将属性从一个多边形图层投影到QGIS中的另一个图层?


16

我有2个多边形图层,可以在这里找到。两层是重叠的。第一个包含1928年德国各县的地图,第二个包含2014年各县的地图。

2014层包含有关总体的信息(在数据集中称为Bev)。是否可以将人口属性从一个多边形图层投影到另一多边形图层?

更具体一点:

考虑这样一种情况,我在一个具有人口属性的层中有2个县,而在另一层的同一区域中只有1个县。QGIS是否可以汇总两个县的人口并将此信息写入另一层?

如果这行得通,那么当具有信​​息的层在特定区域中只有一个县,而在另一层中有两个县时,是否还有办法做到这一点?在这种情况下,我想按县的大小按比例分配人口。


这个答案应该可以让您开始一般的工作流程:gis.stackexchange.com/a/136820/10919
Tom

我认为上述链接是一个很好的起点-但(!)表示人口在受影响的多边形内平均分布。这不是事实
罗伯特·杜

2
...很抱歉错过了5分钟的时限。待续:如果您同时比较这两个形状文件,则细节程度存在显着差异-这导致无数条银色多边形...请查看[link](dropbox.com/sh/7w97kjey33k7jdi/ AAARDwyyMryOBwjtY6IrFsh9a?dl = 0)。如果您当时有任何有关定居区的信息,结果可能会得到显着改善
罗伯特·杜(Robert Tuw)

……例如,免费的Corine土地覆盖数据可以帮助识别目前定居的地区,从而提高按地区分配人口的结果。
罗伯特·杜(Robert Tuw)2016年

Answers:


8

免责声明:

  1. 我认为,在这种特殊情况下,使用2014年以来的人口数据作为点层并尽可能多地获取细节(郊区,城镇,村庄的质心...)会更加准确。

  2. 如果BEV_确实是人口,那么会有一些非常奇怪的值,例如GEN = Uelzen,BEV_ = 92553,在此将该多边形与Google卫星图像区域(最多几个足球场的泥土大小)进行比较。

如果您真的想根据图层之间重叠的多边形面积的比率获取数值(L1 = counties_2014,L2 =德国1928年):

  1. 在进行任何计算之前,我建议使用投影坐标系,以米为单位,面积分别以平方米为单位。在这种情况下,我使用了EPSG:3857
  2. 在L1中使用字段计算器,创建列“ Area ”并填充$ area
  3. 相交层- 矢量/地理处理工具/相交...-输入= L1,相交= L2
  4. 在“ 相交的图层”中,使用“ 字段计算器”,为按新区域“ PopArea ” 调整的人口创建列,并填充“ Population” * $ area /“ Area”
  5. 使用“ 处理工具箱”溶解相交的图层 -查找溶解多边形
    • 从L2中选择一些唯一的多边形值列,例如“名称”
    • 检查Compute min / max / sum ...并在“ PopArea ” 上进行计算
    • 最后一层将包含sum_diss列,这是您要查找的列(在这种情况下,从2014年起调整后的1928个县的人口)

如果做得好,那么在L1县的8100万人口中,应该分配给L2县的大约7700万人。

在此处输入图片说明


感谢您的回答。关于前两点:我还尝试实现质心。效果还不错,但是特别是对于较小的多边形,匹配效果不是很好。我认为人口数据有些混乱。但这只是一个小问题,我可以解决自己的问题。
Alex

@Alex我认为在这种情况下,使用点或质心距离我的解决方案太远了,因为非常随机的重叠,因此我将其称为足够。这样您将丢失太多数据。
米罗(Miro)

9

如果我正确理解您的问题,则可能会解决您的第一个问题。我进行了快速测试,以下方法似乎可行,但值得仔细检查以确认是否正确。

  1. 在1928年的图层中创建随机点(质心可能会更好。您必须检查);
  2. 将点层与2014层相交(点层应为输入层);
  3. 按位置联接属性。目标层是2014层,积分层是连接层。使用包含作为几何谓词。将属性摘要保留为默认值(第一个定位的功能)。将所有记录保留在“联接表”下拉框中。

检查输出层是否正确。

如果可能,请通过qgis中的处理工具箱运行它(不必保存每个图层,而是将其保存为临时图层)。

不完全确定第二个问题是什么。你能详细说明吗?

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.