#1 Thu 08 January 2015 16:11
- Elie45
- Participant actif
- Date d'inscription: 7 Nov 2014
- Messages: 57
QGIS: Double étiquetage sur une couche
Bonjour,
Je possède une couche cadastre pour laquelle dans les attributs il existe deux colonnes : une pour la section et une pour le numéro de la parcelle.
Est-il possible de faire apparaitre deux étiquettes sur la couche pour pouvoir lire sur la carte la section et le numéro simultanément?
Hors ligne
#2 Thu 08 January 2015 16:28
- romainbh
- Participant assidu
- Date d'inscription: 20 Aug 2013
- Messages: 355
Re: QGIS: Double étiquetage sur une couche
Il est possible d'afficher plusieurs attributs dans une même étiquette, soit à la suite soit avec des retours à la ligne.
par exemple, pour afficher deux champs à la suite :
Code:
"champ_1" || "champ_2"
Avec un espace entre les deux :
Code:
"champ_1" || ' ' || "champ_2"
Avec un retour à la ligne :
Code:
"champ_1" || '\n' || "champ_2"
En fait, toutes les possibilités de la calculatrice de champ peuvent être utilisées
Hors ligne
#3 Fri 09 January 2015 08:23
- jacques féraud
- Participant actif
- Date d'inscription: 13 Sep 2011
- Messages: 76
Re: QGIS: Double étiquetage sur une couche
Bonjour,
Pourquoi ne pas créer un nouveau champ en concaténant section et numéro ?
Jacques
Hors ligne
#4 Fri 09 January 2015 09:54
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3927
Re: QGIS: Double étiquetage sur une couche
Bonjour,
A mon avis, vu qu'il existe des formules relativement simples pour effectuer son étiquetage, il vaut mieux les utiliser que de modifier la structure de ses données (pour cet unique usage). Imaginez ce que deviendrait cette table si dans un autre projet, il fallait afficher la sous-section et le numéro de feuille, puis une autre combinaison dans un autre projet...
Et puis utiliser la formule permet par ex de mettre facilement sur plusieurs lignes, ce qui requerrait plus de code dans le cas d'un champ concaténé.
Hors ligne
#5 Fri 09 January 2015 11:14
- Elie45
- Participant actif
- Date d'inscription: 7 Nov 2014
- Messages: 57
Re: QGIS: Double étiquetage sur une couche
oui la méthode d'affichage de deux champs à la suite me va très bien. Simple et tout et tout. merci
Hors ligne
#6 Wed 14 December 2016 17:28
- BME
- Juste Inscrit !
- Date d'inscription: 14 Dec 2016
- Messages: 1
Re: QGIS: Double étiquetage sur une couche
Je relance un vieux sujet.
Cette technique est très bonne, mais rien ne s'affiche dans les cas où un champ est nul.
Comment faire pour afficher une seule étiquette quand un champ est nul ?
Hors ligne
#7 Wed 14 December 2016 19:56
- Marc-André
- Participant assidu
- Lieu: Montréal
- Date d'inscription: 30 Sep 2005
- Messages: 688
Re: QGIS: Double étiquetage sur une couche
Bonjour.
Vous pouvez essayer ceci:
Code:
(CASE WHEN "champ_1" IS NULL THEN '' ELSE "champ_1" END) || '\n' || (CASE WHEN "champ_2" IS NULL THEN '' ELSE "champ_2" END)
Dernière modification par Marc-André (Wed 14 December 2016 19:57)
Hors ligne
#8 Thu 15 December 2016 10:00
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3927
Re: QGIS: Double étiquetage sur une couche
Bonjour,
Ou combinez avec la fonction concat qui gère bien le null (voir quelques exemples d'étiquettes à http://docs.qgis.org/2.14/fr/docs/user_ … pressions)
Hors ligne
#9 Fri 16 December 2016 08:08
Re: QGIS: Double étiquetage sur une couche
Bonjour,
Pour traiter les valeurs nulles, on a aussi :
Code:
COALESCE("champ_1", '')
qui permet de renvoyer une chaine vide (ou autre chose) si champ_1 est NULL.
Christophe Damour (SIGéal)
Hors ligne