3

In the standard join attributes by locationfeature in QGIS 2.0/2.18, there are two options:

  • Take attributes first located feature
  • Take summary of intersecting features

Is there a function in QGIS that allows to take attributes of more than located feature? That is, to get ALL qualitative values the polygons that intersect/overlap. With an attribute column for the value of the first located feature, another for the second located feature, etc. This should work in cases where located features can overlap (e.g. species habitat polygons where more than one species can occupy the same location) but the original polygon onto which we want attributes of the second layer has spatially separate polygons (e.g. watersheds from which we want to know which species are present).

In my case here: I am working with one polygon shapefile from which I want to obtain the attributes for another polygon shapefile. According to the output from the summary of intersecting features, there are a total of up to seven intersecting features for a given polygon in the file I want to join to.

If the answer is "no", then please add as an official answer so I can mark it as answered. It seems that it is not possible in QGIS given the comments but it would be good to confirm. I may make a feature request.

  • What are your layers? Are they all polygons? – JoshC Feb 7 '18 at 4:28
  • Yes they are all polygons. – user3386170 Feb 7 '18 at 13:21
  • 1
    I'm not aware of a tool to do that, but I've used pyqgis to produce those results. – artwork21 Feb 7 '18 at 13:57
  • Probably Virtual Layers is your best shot. – Alexandre Neto Feb 8 '18 at 17:23
  • A workaround would be to convert the species habitat polygon layer into non-overlapping polygons, with a separate column for the attributes of each species. Not a very elegant solution, though. – csk Feb 8 '18 at 18:11
1

It is now part of the standard options in QGIS 3.0 to join to more more than located feature. Many thanks to the developers that added this feature in the new release.

In the French version, the options under Joindre les attributs par localisation:

-Type de jointure

-Créez une entité distincte pour chaque entité située

enter image description here

  • Please edit to add text in English version for users. – user3386170 Jun 26 '18 at 14:18
0

I would suggest a clip operation, with the ID/some unique number of source polygon.

  • Could you please expand upon your answer? As far as I know, a clip operation changes the original features -- a spatial join of attributes keeps the geometry of the features. My question aimed to keep the original watershed polygons while adding species information. Unless you can add more detail, your answer is off-topic, particularly since the issue was resolved with the newest release of QGIS 3.- – user3386170 Apr 23 at 12:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.