I'm using QGIS 2/12.3

I have a point layer with modelled data on a 1km grid, each point has a value (0-5, modelling temperatures) and lies at the centre point of a 1km grid square.

I also have a polygon layer which is of 1km squares.

I need to assign the points values to the corresponding polygons.

If I use intersect, the output layer is points, not polygons.

(I need to do this so I can intersect the km squares with another layer to find the average value for each polygon).

I realise one way might be to add a new column to the attribute table and paste data across - but I need some guidance.

  • 1
    Try completing a Spatial Join – MDHald Feb 29 '16 at 20:20
  • You may need to do a spatial join that joins the ids from the polygons to the points then do a database join to link the info back to the polygons using the Ids - hope this makes sense. – Sethinacan Mar 1 '16 at 10:34
  • Not entirely - I assume data management -> join attributes, but how to I join databases? – Stub Mandrel Mar 1 '16 at 17:06

This is just a visual explanation of Join attributes by location.

(1) Let's assume you have a point layer (Point_temperature) with id and mod_temp fields.

(2) You also have a polygon layer (Grid) which has its own id field. (Note this id is unrelated with another id in the point layer.)

enter image description here

(3) Go to Vector | Data management | Join attributes by location.

(4) Make sure the Target is your Grid layer, and select Take attributes of the first located feature option.

(5) It will return a Joined layer (new polygon layer) in which you will see id_1 and mod_temp copied from the point layer.

enter image description here

| improve this answer | |

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.