banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GeoDataDays 2025

#1 Thu 08 January 2015 16:11

Elie45
Participant actif
Date d'inscription: 7 Nov 2014
Messages: 57

QGIS: Double Etiquetage 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 Etiquetage 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 wink

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 Etiquetage 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: 4119

Re: QGIS: Double Etiquetage 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 Etiquetage 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 Etiquetage 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 Etiquetage 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: 4119

Re: QGIS: Double Etiquetage 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

SIGEAL
Participant assidu
Lieu: Saint Laurent des Combes
Date d'inscription: 5 Sep 2005
Messages: 195
Site web

Re: QGIS: Double Etiquetage 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

 

#10 Tue 21 January 2025 10:33

Alex482
Participant occasionnel
Date d'inscription: 2 Feb 2018
Messages: 20

Re: QGIS: Double Etiquetage sur une couche

Bonjour,

Et comment faire, s'il vous plait, pour que "champ_2" soit en italique ? (Et "champ_1" pas en italique).

Merci beaucoup !

Alex

Hors ligne

 

#11 Tue 21 January 2025 14:24

cyrille
Participant assidu
Date d'inscription: 7 Feb 2006
Messages: 403

Re: QGIS: Double Etiquetage sur une couche

A partir de QGIS 3.16, dans les propriétés de l'étiquette, vous pouvez cocher « Rendu HTML », afin que les étiquettes puissent être interprétées comme du code HTML. Votre étiquette peut alors être écrite comme suit :

'<b>'||"Champ2"||'</b>' || '<br>' || "Champ1" || '<br>' || "Champ3"

vous utilisez <b></b>pour écrire en gras et <br>pour changer de ligne. Ou champ1 sera écrit en gras donc.

possible d'avoir un rendu sous forme de tableaux.



source https://gis.stackexchange.com/questions … el-in-qgis

Hors ligne

 

#12 Tue 21 January 2025 16:45

Alex482
Participant occasionnel
Date d'inscription: 2 Feb 2018
Messages: 20

Re: QGIS: Double Etiquetage sur une couche

Bonjour,

Merci beaucoup pour votre réponse, qui correspond bien à mon besoin.

Toutefois, après avoir bien coché la case "Permettre le formatage HTML", la prévisualisation donne le résultat attendu, mais le canevas de carte n'en tient pas compte (les styles appliqués restent ceux définis hors formatage HTML).

Sauriez-vous pourquoi ?

Merci, Bien cordialement, Alex

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo