Comment créer des étiquettes verticales dans QGIS?

13

Comment créer des étiquettes verticales (chaque étiquette dans une nouvelle ligne) comme:

1998
150
pipe name

et non horizontal:

1998 150 pipe name
Andrej
la source

Réponses:

12

Vous pouvez utiliser une expression QGIS dans l'expression d'étiquette.

"Date" || '\n' || "Size" || '\n' || "name"

Vous pouvez même envelopper l'expression sur plusieurs lignes pour faire la même chose

"Date" || '
' || "Size" || '
' || "name"

Notez la 'fin et le début de chaque ligne. Le premier est plus clair avec ses intentions, donc je l'utiliserais.

Nathan W
la source
8

Une alternative à l'excellente réponse de Nathan consiste à utiliser le nouvel onglet d'étiquetage dans QGIS 1.9 (également disponible dans la version 1.8 mais pas dans le menu des propriétés de la couche. À la place, allez dans Layer-> Labels).

Si vous faites défiler vers le bas sur l'onglet des paramètres d'étiquette, vous trouverez une option Lignes multiples, où vous pouvez spécifier le caractère sur lequel mettre la ligne. Cela sera utile si vous concaténez votre chaîne en utilisant autre chose qu'un caractère de nouvelle ligne (selon la réponse de Nathan) ou si vous avez une chaîne qui se trouve dans un seul champ (je dois souvent faire face à des données légèrement `` désordonnées '' provenant d'autres sources comme ça).

L'autre avantage de l'option plusieurs lignes est que vous pouvez également spécifier l'alignement et la hauteur de ligne. Vous pouvez donc concaténer en utilisant des espaces, puis aligner au centre ou à droite avec un espacement de 1,5 ligne (si cela est attrayant sur le plan cartigraphique).

par exemple "Date" || ' ' || "Size" || ' ' || "name"

... avec un habillage défini sur un seul espace plus un alignement réglé sur 'droite' pourrait vous donner quelque chose comme:

     1998
      150
pipe name
MappaGnosis
la source
2

À partir de QGIS version 2.12, vous pouvez utiliser l'étiquetage basé sur des règles: une règle pour chaque champ; Dans la capture d'écran, vous pouvez voir comment le faire !!! entrez la description de l'image ici

pigreco
la source