Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've always found that when it comes to python, vector analysis, QGIS gives ArcGIS a run for its money, hell some of the qgis plugins exceed ArcGIS's performance by a few hours; however, I always have found that compared to ArcGIS, QGIS's labeling system lacks the expressions, sql, and detailed representation. I've tried mapnik, and it's nice, but still it seems to pretty up the problem rather than fix it.

  • How can I improve my own maps done on QGIS, especially with label classes, expressions, and annotations?
  • What needs to be done to enhance QGIS's labeling system in terms of someone writing a plugin or something similar?
share|improve this question
I think you need to expand on exactly what you feel is missing in QGIS for those of us who don't use ArcGIS – iant Jan 7 '11 at 16:32
@iant - mostly label and symbology classes with on/off features based on sql-label queries – dassouki Jan 7 '11 at 16:38
still means nothing to me – iant Jan 7 '11 at 18:29
up vote 8 down vote accepted

While there is no comfortable editor for label properties available yet, you can achieve the effect of label classes using "data defined labeling":

alt text

This requires some data preparation, but the results should be just what you are looking for.

Also of interest to you might be the new labeling tools by Sourcepole:

  • 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

alt text

It's also possible to create multi-line labels:

enter image description here

QGIS also offers annotation tools:

alt text

A great improvement would be to implement all the options currently available in "rule based" renderer for the labeling engine.

share|improve this answer
"A great improvement would be to implement all the options currently available in "rule based" renderer for the labeling engine." hmmm that is a pretty cool idea, wish I had the skills to implement it. – Nathan W Jan 12 '11 at 22:26
Shall I ask another very similar question here or create a new question on the sa? How to label with qgis based on attribute and extent of map? For example extent>1:1000 then label all those features whose area>100000 at font size 12 and those features whose area<99999 at font size 5. – Justin Oct 7 '12 at 21:48
@Justin Please open a new question. – underdark Oct 8 '12 at 5:35

Just an update to reflect that QGIS now has, since 1.8, expression labels

Expression labels QGIS

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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