0

enter image description here

Is there a way to prevent labels from 2 different layers (province and city names)? This map of Argentina looks a bit messy as some labels are overlapping and become unreadable.

4
  • 3
    And you are doing this using which software? – Erik Apr 16 '20 at 14:07
  • 1
    You need to find a base map with no names on it – Ian Turton Apr 16 '20 at 14:13
  • 1
    Try setting a lower priority for the labels you wish to be hidden if they overlap – MrXsquared Apr 16 '20 at 15:17
  • @ Erik, I am using QGIS 3.4 @ Ian see my comments below. @ MrXsquared will follow your advise. To all I am very grateful for your kind assistance, it helps me a lot to learn how to use QGIS. For a absolute rockbottom beginner, it is not easy. Many thanks. S – LeMoaiVoyageur Apr 16 '20 at 22:25
6

QGIS will try to not overlap label when possible but as you experience it's not always possible with some setting. To prevent overlapping label you can try (listed in no particular order) to:

  • Choose a more relaxed label placement (ie. choose a setting that
    allow the labelling engine to choose between more possible placement)
  • uncheck the "show all label for all layer" in the labelling engine setting (but you won't have all label, you could use the "priority" slider on each layer label setting to choose witch one will be displayed over the other)
  • increase the "number of candidate" in the labelling engine setting (it's the number of different position that the engine will evaluate for label placement, I'm not sure of the exact effect of that)
  • Have smaller/more compact label (use smaller font size or multi-line label, play with character width and spacing...)
  • manually place the label at the best location (on map with complex labelling this is often the only way to get good placement, on your map as you don't have that many label it may be quicker than playing with all the above setting...)
  • tolerate some superposition, if some label are less important place those less important label at the bottom (under the other label, use the "label z index" setting to order your label by layer) and choose a combination of font and color that make the upper label legible (like bigger black label on top of smaller grey label)

If you want to read on label placement : Positioning Names on Maps - by Eduard Imhof (this is a google drive link to the pdf on a reddit page)

1
  • Thank you @J.R. much appreciate, I ended up moving the labels manually! – LeMoaiVoyageur Apr 18 '20 at 11:43
2

QGis can only control labels that it is drawing, it looks like the basemap you are using has the labels pre drawn on it before it is added to QGis so that QGis thinks it is just an image and knows nothing about the labels.

The only fix for this is to use another base map with no labels, or replace that layer with a set of layers that QGis is drawing so it can combine the labels and work out label placements for you.

2
  • Hi Ian, when you say "pre-drawn" does that include shape files. i.e. is a shape file a "pre-drawn file in your words? The map is made of 3 shape file layers, city, province and country. Would layers talk to each other and arrange labels in the best possible way ? (if that makes sense). Thank you for your help, much appreciated – LeMoaiVoyageur Apr 16 '20 at 22:22
  • A shapefile would be ideal – Ian Turton Apr 17 '20 at 9:44

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.