Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
Pages: 1
- Sujet précédent - QGIS: Style polygones - Ensemble de regle + Categorisation - Sujet suivant
#1 Mon 02 March 2020 14:32
- Giene
- Participant actif
- Date d'inscription: 1 Dec 2018
- Messages: 75
QGIS: Style polygones - Ensemble de regle + Categorisation
Bonjour,
Je passe de temps en temps sur le forum georezo pour différents problèmes que j'ai sur QGIS et que je parviens généralement à résoudre.
Mais pour cette fois, tous mes tests s'avèrent peu concluants et je ne parviens pâs à trouver de solution sur le net (peut-être parce que je ne m'y prend pas de la bonne manière).
Dans mes recherche je me suis aidé de discussions autour de sujets similaires sur le forum (https://georezo.net/forum/viewtopic.php?id=106957 ; https://georezo.net/forum/attachment.php?item=7115 ; sans succès.
Mon problème est le suivant :
J'utilise, dans une colonne de la table attributaire des codes (nomenclature EUNIS) qui se présentent sous cette forme :
"LETTRE" "CHIFFRE" "." "CHIFFRE ou LETTRE" "CHIFFRE" etc.
Je voudrais créer une règle qui dit que :
Si un code commence par la lettre "J" alors QGIS doit chercher une couleur dans une liste de couleurs pré-enregistrées (plusieurs teintes de gris par exemple). Si un champ dans cette même colonne commence par la lettre "J mais que le chiffre qui suit est "1" alors QGIS utilise toujours le gris, mais avec une teinte différente parmi celles pré-enregistrées.
En une ligne : Chaque code doit posséder une teinte différente, la première lettre du code permettant de définir la couleur de base à utiliser (rose, gris, jaune, etc.)
Ceci est la première étape, par la suite, j'aimerais être un peu plus précis en distinguant les codes après le "." et puis les mélanges de codes (mais c'est une autre histoire...).
J'espère avoir été clair dans mes explications, sinon je m'efforcerai d'être plus précis.
Je vous remercie de votre attention,
Bonne journée !
Hors ligne
#2 Tue 03 March 2020 02:11
- lylambda
- Participant actif
- Date d'inscription: 31 Aug 2016
- Messages: 127
Re: QGIS: Style polygones - Ensemble de regle + Categorisation
Dans QGIS, de manière générale, un élément de style peut être définis en fonction de la valeur d’un attribut via la définition de donnée imposée.
Ainsi, si tu effectues la démarche suivante sur ta couche de polygone...
> Clic droit « Propriété... »
> Onglet « Symbologie »
> Menu « Symbole simple »
> Sous-menu « Remplissage simple »
> Icône « définition de donnée imposée » à droite du Champ « Couleur de remplissage »
> Menu « Éditer... »
...cela va ouvrir un constructeur de chaîne d’expression dont le format de sortie attendu devra être une « Chaîne de caractères [r, v, b, a] composée d'entiers 0-255 ou #RRVVBBAA en hexadécimal ou couleur du nom de la couleur ».
A toi de créer une formule qui, à partir des valeurs de ton attribut "TON-CODE-EUNIS", devra en déduire un code couleur selon le format spécifié ci-dessus.
Exemples (non fonctionnels) :
1. Définir une concordance entre chacune des valeurs possibles de ton attribut avec un code couleur spécifique
Code:
CASE WHEN "TON-CODE-EUNIS" IS ‘J1.X0’ THEN '#00b0f0' WHEN "TON-CODE-EUNIS" IS ‘J2.Y3’ THEN '#92d050' [...] ELSE '#ffffff' END
2. Interpréter le format des valeurs de ton attribut pour le transformer au format du code couleur
Code:
regexp_replace("TON-CODE-EUNIS", array( 'J', '1', [...]), '#' array('00', 'b0', […]))
L'exemple 1 risque de vite devenir une usine à gaz, si de multiples valeurs sont possibles dans ta table attributaire. Tandis que l'exemple 2 nécessite que les éléments de ton code soient traduisibles en "Rouge Vert Bleu Alpha".
J'espère que cela t'ouvre des pistes.
Bonne continuation !
Dernière modification par lylambda (Tue 03 March 2020 02:12)
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Style polygones - Ensemble de regle + Categorisation - Sujet suivant