Pages: 1
- Sujet précédent - QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche - Sujet suivant
#1 Mon 08 April 2013 11:08
- guibouvier
- Participant actif
- Date d'inscription: 23 Jan 2007
- Messages: 104
QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour à tous,
malgré plusieurs posts ou liens traitant de la problématique du moteur d'étiquettes "ABC" sous Qgis 1.8 (permettant déjà beaucoup de choses !), je n'ai pas trouvé mon bonheur.
J'ai une couche "tronçon de voie" que je représente avec des couleurs différentes (Bleu, Rouge, Vert..) suivant un champ "Couleur" dans la table attributaire. Jusque là tout va bien.
J'aimerai si possible que les étiquettes affichant le nom de la voie aient une police de couleur différente à la manière de mes tronçons de voie.
Est ce possible de faire varier la police des étiquettes d'une couche (couleur, taille...) en fonction d'un champ attributaire ?
J'espère avoir été clair.
D'avance merci pour vos réponses
Gui
Hors ligne
#3 Mon 08 April 2013 11:27
- guibouvier
- Participant actif
- Date d'inscription: 23 Jan 2007
- Messages: 104
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
merci mais je souhaite pouvoir faire varier la police des étiquettes d'une même couche en fonction d'un champ.
Ex: Un champ "Couleur" dans ma table "axe de voie" alors:
- les axes de voie ayant la valeur "Rouge" dans champ "Couleur" seront tracés en rouge + leurs étiquettes seront écrites en rouge
- les axes de voie ayant la valeur "Bleu" dans champ "Couleur" seront tracés en bleu + leurs étiquettes seront écrites en bleu
et ainsi de suite...
j'ai vu que je pouvais manuellement modifier une étiquette particulièrement mais j'aimerai automatiser cela.
Dernière modification par guibouvier (Mon 08 April 2013 11:29)
Hors ligne
#4 Mon 08 April 2013 12:35
- gaetanpru
- Participant actif
- Lieu: Limoges
- Date d'inscription: 4 Jan 2012
- Messages: 91
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour
Dans l'outils "ABC" il a l'onglet "source de définition des paramètres" et là tu peux spécifier une colonne de couleur, de police, de taille... Pour la police mais je ne sais pas si ça marche bien, je n'ai jamais testé. Je pense que c'est ce que disait baobazz.
Après pour tracer des axes avec une couleur différente, il faut utiliser une symbologie en catégorie.
Gaëtan - Béziers
Hors ligne
#5 Mon 08 April 2013 12:37
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3882
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
je ne l'ai jamais testé mais il me semble que la réponse est bien celle de Baobazz. Dans ABC, onglet "Source de définition des paramètres", vous avez la possibilité d'appliquer des modes de représentation (police, couleur, taille...) selon des valeurs de champs.
Après, je ne saurais vous dire sous quelle forme devrait être renseigné le contenu du champ, notamment couleur (surement RVB?)...
Hors ligne
#6 Mon 08 April 2013 13:40
- guibouvier
- Participant actif
- Date d'inscription: 23 Jan 2007
- Messages: 104
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
merci pour vos éléments,
j'ai vu effectivement cet onglet "source de définition des paramètres" , mais je ne savais pas comment il fonctionnait.
Je vais tester de l'héxadécimal et autres RGB.
Je ferai un retour.
Hors ligne
#7 Mon 08 April 2013 14:26
- guibouvier
- Participant actif
- Date d'inscription: 23 Jan 2007
- Messages: 104
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
je ne l'ai jamais testé mais il me semble que la réponse est bien celle de Baobazz. Dans ABC, onglet "Source de définition des paramètres", vous avez la possibilité d'appliquer des modes de représentation (police, couleur, taille...) selon des valeurs de champs.
Super ça fonctionne !
il faut donc bien créer un champ dédié à la couleur de l'étiquette et renseigner les valeurs des couleurs en code héxadécimal. On peut de la même manière faire varier la taille de la police de l'étiquette en créant un champ dédié de type entier.
Le paramétrage des étiquettes est vraiment puissant sous Qgis, merci à tous pour votre aide.
Gui
Hors ligne
#8 Tue 09 April 2013 13:54
- CBedeau
- Participant occasionnel
- Lieu: Cayenne
- Date d'inscription: 5 Dec 2011
- Messages: 38
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Pour compléter les infos sur le moteur d'étiquette de QGIS, un petit post bien expliqué sur le paramétrage (en anglais) :
http://gis.stackexchange.com/questions/ … g-settings
Concernant la couleur des polices, les noms "codes" des couleurs tels que définis par le W3C sont aussi acceptés, mais l'héxadécimal est fortement conseillé.
http://www.w3.org/TR/SVG/types.html#ColorKeywords
Hors ligne
#9 Tue 09 April 2013 14:54
- christophe_hardy
- Participant actif
- Lieu: Arras
- Date d'inscription: 24 Oct 2011
- Messages: 101
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
D'abord vous créez un champ dans votre couche, dans lequel vous indiquez la couleur en héxadécimal.
Puis dans l'onglet ABC > source de définition des paramètres > ligne "couleur", vous sélectionnez ce champ.
Ça devrait fonctionner ainsi.
Hors ligne
#10 Tue 15 July 2014 18:26
- mad44
- Participant occasionnel
- Date d'inscription: 5 Jan 2013
- Messages: 15
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
Je fais suite à cette conversation. Savez-vous si avec la version de Qgis 2.2.0, il est possible d’étiqueter des entités avec des couleurs différentes en fonction d'un champ sans ajouter de nouveaux champs avec le code couleur (comme le demandait Guibouvier initialement).
Je vous remercie d'avance pour votre aide,
MAD
Hors ligne
#11 Wed 16 July 2014 04:10
- Leyan
- Participant assidu
- Date d'inscription: 14 Oct 2013
- Messages: 160
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Oui, c'est possible. Il faut créer une expression avec IF ou CASE ... WHEN. Les couleurs sont définies par une chaine de caractère de la forme 'R,V,B' où R, V et B sont des entiers entre 0 et 255 notant la quantité de rouge, vert et bleu.
Par exemple:
Code:
CASE WHEN id <10 THEN '0,0,255' WHEN id >=10 and id<100 THEN '0,255,0' ELSE '255,0,0' END
Hors ligne
#12 Wed 16 July 2014 09:30
- mad44
- Participant occasionnel
- Date d'inscription: 5 Jan 2013
- Messages: 15
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Merci beaucoup pour votre réponse.
Mais, je le note où ce code?
MAD
Hors ligne
#13 Wed 16 July 2014 09:35
- mad44
- Participant occasionnel
- Date d'inscription: 5 Jan 2013
- Messages: 15
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
En cherchant un peu plus, j'ai trouvé: il faut cliquer sur l'icône à droite de l'endroit où l'on choisit la couleur de l'étiquette, et choisir "Editer". Entrer la formule et ça fonctionne.
Merci énormément.
MAD
Hors ligne
#14 Fri 18 September 2015 16:16
- Anaëlle
- Participant occasionnel
- Date d'inscription: 5 Apr 2011
- Messages: 11
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
Je relance le sujet... j'ai la même question si je veux changer la police et le style de l'étiquette en fonction d'attributs.
Ex dans la couche communes de géofla, je veux afficher le nom des communes
en gras et en noir si "STATUT='Préfecture'
en italique avec un tampon blanc si STATUT='Chef-lieu'
en gris souligné si STATUT='Commune simple'.
C'est certainement possible (dans l'éditeur qui fut la solution ci-dessus)... mais comment faire ?
Merci
Bonne fin de semaine,
A.
Hors ligne
#15 Fri 18 September 2015 16:36
- Benoit91
- Participant assidu
- Date d'inscription: 2 Oct 2008
- Messages: 263
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour
En fonction de votre version de QGIS, au niveau des propriété de la couche "étiquette" en face de chaque option vous avez un icône d'option supplémentaire qui vous permet de saisir une expression.
dans style
Code:
CASE WHEN "STATUT='Préfecture' THEN 'bold' ELSE 'Normal' END
Dans couleur
Code:
CASE WHEN "STATUT='Préfecture' THEN '0,0,0' ELSE '255,0,0' END
Ainsi de suite pour chaque options.
Je vous conseil d'ouvrir à chaque fois la "description" pour connaître la valeur d'option attendue dans les expressions.
Cordialement
Dernière modification par Benoit91 (Fri 18 September 2015 16:38)
Hors ligne
#16 Tue 27 October 2015 11:07
- Anaëlle
- Participant occasionnel
- Date d'inscription: 5 Apr 2011
- Messages: 11
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
Merci, c'est exactement ce qu'il me fallait. Merci pour les explications claires, accompagnées de l'impression écran en plus !
Je me permets de préciser qu'il faut utiliser les termes français pour les descriptions :
Code:
CASE WHEN "STATUT='Préfecture' THEN 'Gras' ELSE 'Normal' END
C'est top !
Merci
A.
Hors ligne
#17 Tue 27 October 2015 12:37
- gustavecoste
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 24 Apr 2013
- Messages: 118
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
QGIS 2.12 permet maintenant de faire un étiquetage basé sur des règles de la même manière qu'une symbologie catégorisée.
Globalement cela revient au même mais c'est un peu plus user friendly.
Gustave Coste
Hors ligne
#18 Wed 15 June 2016 11:59
- CamCam21
- Juste Inscrit !
- Date d'inscription: 8 Jun 2016
- Messages: 5
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
Je me permets de relancer le sujet mais je n'ai pas trouvé mon bonheur même en testant les différentes fonctions avec CASE... WHEN.
Pour une même couche, je fais apparaître 3 entités différentes dans mon étiquette (Site, espèce et abondance). J'aimerai que l'abondance soit écrit en plus gros que le site et l'espèce. J'ai tenté le code suivant dans le constructeur de chaine d'expression de la taille mais celui-ci ne fonctionne pas... J'en ai essayé pleins d'autres mais sans résultats. Pouvez vous m'aider svp ?
Code:
CASE WHEN "Site" = 'Marseille' THEN '7' WHEN "Famille" = 'X' THEN '7' WHEN "Abondance" THEN '20' END
Hors ligne
#19 Wed 15 June 2016 21:06
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonsoir,
il manque une comparaison de valeur pour la dernière règle "Abondance":
Code:
CASE WHEN "Site" = 'Marseille' THEN '7' WHEN "Famille" = 'X' THEN '7' WHEN "Abondance" = 'une valeur' THEN '20' END
Hors ligne
#20 Thu 16 June 2016 08:55
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3882
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
C'est moi qui ne comprends pas le besoin ou CamCam21 veut plutôt avoir dans une seule étiquette deux tailles de police différentes? Ce que ne fait pas cette formule et que nativement QGIS ne sait pas encore faire à ma connaissance.
Hors ligne
#21 Thu 16 June 2016 09:51
- Lucien
- Participant actif
- Date d'inscription: 8 Mar 2016
- Messages: 104
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
Le plus simple serait alors de dupliquer la couche, créer sur l'une les étiquettes "Site" et "Famille" de taille 7, sur l'autre l'étiquette "Abondance" et d'ajuster leur emplacement pour qu'elles ne se chevauchent pas
Hors ligne
#22 Thu 16 June 2016 10:34
- CamCam21
- Juste Inscrit !
- Date d'inscription: 8 Jun 2016
- Messages: 5
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
C'est moi qui ne comprends pas le besoin ou CamCam21 veut plutôt avoir dans une seule étiquette deux tailles de police différentes? Ce que ne fait pas cette formule et que nativement QGIS ne sait pas encore faire à ma connaissance.
Bonjour,
Effectivement je voudrais 2 tailles de police différentes dans une seule et même étiquette. ça m'embête bien qu'il ne sache pas encore le faire...
Et pour répondre à Lucien, j'ai 68 couches de base ^^ je n'ai pas trop envie de faire une duplication de couches et de surcharger encore plus mon fichier sachant qu'il est déjà bien conséquent Mais en tout cas merci de la proposition !
Et Haubourg, si je n'ai pas mis de valeur c'est que j'en ai plusieurs et je voulais toutes les prendre en compte en une seule fois. Mais dans tous les cas j'ai vérifié et cette formule ne fonctionne pas pour la taille...
Hors ligne
#23 Fri 29 September 2017 13:59
- dorotheeS
- Juste Inscrit !
- Date d'inscription: 8 Aug 2007
- Messages: 3
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour,
j'ai un problème car avec les solutions données cela ne fonctionne pas.
voici ma formule:
"COMMUNE" || '
' || CASE
WHEN "M² DISP" <0 THEN 'bold' ELSE 'Normal' END
voyez vous des choses qui clochent?
Merci
Hors ligne
#24 Fri 29 September 2017 17:53
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3882
Re: QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche
Bonjour
voyez vous des choses qui clochent?
Il me semble bien. Votre formule renverra en sortie du texte du genre 'Paris bold' ou 'Paris Normal' et je ne suis pas sûr de savoir à quoi cela peut bien correspondre comme valeur, et QGIS encore moins.
Plutôt que de m'étaler dans des suppositions, précisez-nous ce que vous essayez de faire et où vous saisissez cette formule et peut-être arriverons-nous à mieux vous aider. Et pour rester dans le fil de discussion peut-être ce commentaire vous sera utile https://georezo.net/forum/viewtopic.php … 24#p274624 (ou celui juste avant)
Hors ligne
Pages: 1
- Sujet précédent - QGIS 1.8: Etiquettes différentes à l'intérieur d'une même couche - Sujet suivant