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, 2016 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, 2016 at 10:34
  • Not entirely - I assume data management -> join attributes, but how to I join databases? Mar 1, 2016 at 17:06

1 Answer 1


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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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