Take the 2-minute tour ×

Is there a way to manually place labels in QGIS? I have a map which has almost-duplicate labels in some places (e.g. E 1st St and 1st St) and I'd like to remove some of them. Also, I'd like to move some of the labels around and maybe label some features that aren't currently. I'm using new labeling, with the labels curved along the features.

share|improve this question
Duplicate of: How does manual Label Placement in QGIS 1.9 work? –  RyanDalton Oct 8 '13 at 15:06
add comment

2 Answers

up vote 9 down vote accepted

Yes, it's possible to manually place labels using the labeling tools in the label toolbar:

  • move label tool … move text labels to a new position
  • rotate label tool … allows for interactive rotation of labels
  • label property tool … opens a dialog where users can manipulate the properties and text of a label

BUT you won't be able to have curved labels anymore if you move/rotate the labels manually, as far as I know.

These tools allow you to mix fixed label positions and automatic label positioning inside a project. If the x or y attribute value is NULL, the position will be set automatically. When a label position is changed using “move label tool”, the position is written into the attribute fields and the label position for this feature is fixed.

To use these tools on existing layers, add x, y and rotation attribute fields (type double/real). By default, all values will be NULL and thus the layer will be labeled automatically. Now you’re ready to move and rotate the labels as you like. (Editing needs to be enabled while working with these tools!)

share|improve this answer
Hi underdark, do you agree that such implementation to allow move/rotate labels is at least... cumbersome? Without speaking that if you an attribute for rotation already filled, then labels will rotate automatically only if the x/y attributes are already filled too... and in normal cases this means to move by hand any label to have it rotate accordingly. –  Giovanni Manghi Feb 2 '12 at 10:23
Sure it's not perfect. I would expect that it shouldn't be too much work to have auto-rotation combined with manual placement at least. A little funding should make that possible. –  underdark Feb 2 '12 at 10:28
You can actually use the label property tool on curved labels; the other ones don't work. –  mattwigway Feb 2 '12 at 23:54
I've added x, y and rotation attribute fields (type real) and enabled editing, but the move and rotate tools are greyed out, as are the corresponding fields in Labeling Advanced. What am I missing? (QGIS 1.8.0 Mac) –  johnsankey Apr 3 '13 at 16:37
@johnsankey ....type should be double. –  Jeff Cameron May 22 '13 at 14:01
show 5 more comments

In QGIS 2.0 , for the layer whose labels you would like to manipulate:

  1. Open the attribute table and toggle to editing mode.
  2. Add the following columns, all of whose "type" should be selected as "decimal number (real)": "x", "y", & "rotation"
  3. Right click the layer name you wish to label in the "layers" menu and click "Labels"> "Placement".
  4. Locate the "Data Defined" panel. Click on the icon that appears next to "X", point to "field type:" and choose the "x" column that you just created.
  5. Repeat step four for the "Y" and "Rotation" selections.
  6. Ensure that your label toolbar is activated (View>Toolbars>Labels).

If the "move label", "rotate label", and "change label" icons were greyed out before, they should now appear in color and be usable.

share|improve this answer
Please reference gis.stackexchange.com/a/67546/6725 for more information, or the manual. Removing duplicates by deleting the associated text is destructive and should probably be avoided, unless that's the preferred result. Consider using the new Show/Hide tool or just its associated Show Label data defined setting. –  dakcarto Oct 8 '13 at 4:21
Ah, good to know! Will remove that piece from my answer. –  workweek Oct 8 '13 at 11:41
add comment

Your Answer


