qgis – How to Bulk Rotate Labels for Point Layer in QGIS

labelingqgisrotate

I would like to have all the labels rotated for my point layer. To be honest I need this in a batch process. If for example, I have 2 points in a row I would like to have all the labels rotated for these 2 points. Usually, one point has up to 3 different labels defined. As you can see in the image below, the green labels are rotated correctly (line layer), but the red labels are wrong (point layer).
enter image description here

As far as I am concerned the following options, which are resolved under these links:

Is there a way to interactively rotate labels in QGIS using any of the edit tools?

Rotating label in QGIS?

Rotating labels in QGIS 2.8.2

QGIS 2.2: Rotated labels not possible any more?

are not useful in my case, as they explain how to rotate the individual label for an individual object. I would rather to have these labels rotated together with rotation of the object. Since in the case of linear shapes it was possible (look at image above), in the case of point layers it wasn't working.

I tried to use the standard Rotation Tool from the Advanced Digitizing Toolbar

https://gis.stackexchange.com/questions/29241/is-there-a-rotate-tool-in-qgis#:~:text=Show%20activity%20on%20this%20post.,-Use%20the%20Plugins&text=and%20select%20a%20feature%20to,and%20the%20shape%20will%20rotate.

https://gis.stackexchange.com/questions/322262/rotating-shape-around-defined-point-instead-of-centroid-in-qgis#:~:text=In%20QGIS%203%20you%20can,at%20a%20specified%20degree%20clockwise.

but it didn't work either for the point layer.

I would like to know is it some possibility to make the point object rotation (also in the batch mode) which would allow me to rotate all the labels of this object in the direction I want?

Best Answer

You can control the label rotation by using the data driven option for label placement. This might work for you: enter image description here In this example, there is a field called rotate_by and is set to either 90,-90 or 180. The result of this is shown here (with field rotate_by used as the label field: enter image description here

If you want the rotation to be a fixed value, you don't need a dedicated field - you just need that value e.g. 90. Click on Edit on the menu and type in the value.

If you need to rotate symbols - similar approach -> data driven rotation: enter image description here

Related Question