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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Fri 25 March 2016 11:16

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

QGIS : Symbologie SVG et regles d'affichage

Bonjour,

Je dispose de données que je pense mettre en forme de la façon suivante dans ma table attributaire

Objet    caractéristique 1    caractéristique 2    caractéristique 3    caractéristique 4    caractéristique 5
1    oui                                          non                               non                           oui                  non
2    non                                          non                               non                           oui                  non
3    oui                                          oui                               non                                 non                non
4    non                                          oui                                oui                                    non                  non
5    non                                          oui                              oui                               oui                   oui
6    non                                          oui                              non                                 oui                   oui
7    oui                                          non                              non                                    oui                   oui
8    oui                                          non                              non                              oui                   oui

quelle serait la meilleure façon de representer les 5 caracteritiques sous QGis ?

au debut je partais avec l'idee de tout synthetiser et de ne mettre qu'un seul ponctuel de couleur

ex si un objet a toutes les  caractéristiques, le mettre en bleu, si aucune des caractéristiques en blanc etc...

par contre c'est assez compliqué a appréhender pour le lecteur qui doit retourner à la legende à chaque fois.

...

ce we je suis tombe sur le blog d'Anita Graser http://anitagraser.com/2016/03/19/creat … on-series/


et je me dit que ca pourrait repondre a mon besoin


j'ai tenté de reproduire mais j'echoue.

quelqu'un peut il m'expliquer comment faire ?

je parviens a mettre mes 5 symboles svg par objet, je les decale et de cette façon j'ai pour mes ponctuels une représentation avec 5 symboles svg.

Maintenant comment faire pour mettre les conditions d'affichage ? et comment faire pou le cas ou j'ai un non, l'objet n’apparaisse pas ? si possible sans decalage

Merci


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Fri 25 March 2016 12:33

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Salut,

et comment faire pou le cas ou j'ai un non, l'objet n’apparaisse pas ?


Elle écrit :

To hide icons if the icon value is NULL, the marker size is set to 0


J'en déduis, et on peut le supposer depuis sa 3ème capture d'écran, que tu appliques un case when à l'option taille de l'image.

Hors ligne

 

#3 Fri 25 March 2016 14:27

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

Re: QGIS : Symbologie SVG et regles d'affichage

Merci pour l'info, mais voici ce que j'obtiens : il y a un décalage quand la valeur est nulle. C'est ce que je voudrais éviter. Je continue à chercher.

Dernière modification par cyrille (Fri 25 March 2016 14:28)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#4 Fri 25 March 2016 15:25

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Petite remarque
vos données ne sont pas stockées pareil: elle a une entrée "ordre des icônes" ce qui fait que ces null sont à la fin alors que toi, tu as une entrée plutôt thématique et tes null sont disséminées dans la table. Par conséquent, de son post, l'idée que tu as récupérée, c'est plutôt le décalage entre les icônes; sa formule CASE WHEN telle qu'elle est ne t'est pas utile. J'ai bien compris?

Du coup, dans ton cas, la variable d'ajustement sera le décalage: les icônes devront être décalées vers la gauche proportionnellement au nombre de valeurs précédentes nulles. Dans les variables de l'option décalage, que se passe-t-il, si pour le l'icone3, au lieu de saisir une valeur en dur, tu mets

Code:

tondecalageenX * (if ("champ1", 1,0)+if("champ2",1,0)), tondecalageenY

La distance de décalage représente l'écart entre deux icônes consécutifs.

Hors ligne

 

#5 Fri 25 March 2016 15:46

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

Re: QGIS : Symbologie SVG et regles d'affichage

Bien vu ! c'est exactement ca. Mon fichier me parait plus simple à maintenir que le sien. D'ailleurs je n'ai jamais vu une organisation comme ca avec des valeurs identiques dans plusieurs colonnes ?
Ton code doit aller dans l'editeur en face des options decalage ? il est complet ? je ne comprend pas.
J'etais parti sur CASE WHEN "info1"='NULL' THEN  .0 END comme condition des options de decalage.

Hors ligne

 

#6 Fri 25 March 2016 16:06

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Oui, dans l'éditeur en face de l'option décalage. Il lui faut, une entrée du type X,Y. La formule te renvoie une erreur?
L'idée est de compter le nombre de non null dans les champs précédents

if ("champ1", 1,0)


renvoie 1 si "champ1" est non null et différent de 0 (autrement, il renvoie 0) et on multiplie la somme des valeurs renvoyées par le décalage nécessité par chaque icône.

Et le case when te renvoie quelque chose. Je crains qu'il ne faille en imbriquer un certain nombre

Dernière modification par SANTANNA (Fri 25 March 2016 16:07)

Hors ligne

 

#7 Fri 25 March 2016 16:32

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

Re: QGIS : Symbologie SVG et regles d'affichage

Merci pour ton retour, ca semble assez ardu pour mon niveau smile
je met cela dans l'éditeur et cela ne fonctionne pas CASE WHEN "info1"='NULL' THEN  (0.0) else (0.11) END
(c'est du debogage et voudrais comprendre la focntion..)
Merci

Hors ligne

 

#8 Fri 25 March 2016 16:43

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Cette formule CASE WHEN, tu la mets où? Si c'est pour le décalage, il faut deux valeurs séparées par une virgule (x,y) et là, tu ne donnes qu'une valeur.
Pour être sûr de bien comprendre, y a-t-il moyen d'avoir une copie de ta fenêtre Style?

Hors ligne

 

#9 Fri 25 March 2016 16:46

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

Re: QGIS : Symbologie SVG et regles d'affichage

Voici :

Dernière modification par cyrille (Fri 25 March 2016 16:46)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#10 Fri 25 March 2016 16:49

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

C'est-à-dire que t'as rajouté cinq fois ta couche?
Essaye avec une virgule au lieu d'un point et sans parenthèse. Ca ne donnerait pas ce que tu veux mais ca va bouger.

Bon, je viens de tester sur un jeu de données et il faut bien lui spécifier le format texte, c'est à dire quelque chose de la forme '0,5' (avec l'apostrophe)

Dernière modification par SANTANNA (Fri 25 March 2016 17:01)

Hors ligne

 

#11 Fri 25 March 2016 17:02

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

Re: QGIS : Symbologie SVG et regles d'affichage

CASE WHEN "info1"='NULL' THEN  0,0 else 0,11 END => expression invalide...
Mais ca me semble une methode a creuser.
je travaille avec une representation ensemble de regles
5 ponctuels SVG avec 5 filtres
reste à trouver l'astuce pour le décalage..

Hors ligne

 

#12 Fri 25 March 2016 17:05

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Code:

CASE WHEN "info1" is NULL THEN  '0,0' else '0,11' END

Edit: correction de la condition

Dernière modification par SANTANNA (Fri 25 March 2016 17:16)

Hors ligne

 

#13 Fri 25 March 2016 17:09

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

C'est possible de voir la fenêtre "ensemble de règles"?

Hors ligne

 

#14 Fri 25 March 2016 17:12

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

Re: QGIS : Symbologie SVG et regles d'affichage

Finalement c'est

Code:

CASE WHEN "info1"=NULL THEN  '0,0' else '11,0' END

reste à enchainer les cas ...
Merci.

Hors ligne

 

#15 Fri 25 March 2016 17:18

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

Re: QGIS : Symbologie SVG et regles d'affichage

Oui la voici :

Dernière modification par cyrille (Fri 25 March 2016 17:18)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#16 Fri 25 March 2016 17:23

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Maintenant que le fonctionnement du décalage est maîtrisé, puis-je insister et revenir sur la formule avec if que tu trouvais ardue? smile qui devient alors

Code:

concat(11 * (if ("champ1", 1,0)), ', 0'

pour la deuxième icône

Code:

concat(11 * (if ("champ1", 1,0)+if("champ2",1,0)), ', 0'

pour la troisième icône
...

Hors ligne

 

#17 Fri 25 March 2016 17:30

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Je dois t'avouer que je n'ai pas bien compris pourquoi ces règles et sur quoi elles s'appliquent mais si ça marche pour toi... why not.
PS: je ne saurais réellement t'expliquer le pourquoi du comment mais il vaut mieux souvent utiliser IS NULL plutôt que =NULL. (indication aussi présente dans l'aide de la fonction null)

Hors ligne

 

#18 Fri 25 March 2016 17:41

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

Re: QGIS : Symbologie SVG et regles d'affichage

J'y suis presque du coup smile

Dernière modification par cyrille (Fri 25 March 2016 17:50)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#19 Fri 25 March 2016 17:50

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS : Symbologie SVG et regles d'affichage

Yep! Regarde plus posément chaque icone, il y en a peut-être ou le décalage n'est pas bien évalué.
Bon courage

Hors ligne

 

#20 Fri 25 March 2016 17:56

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

Re: QGIS : Symbologie SVG et regles d'affichage

Tout fonctionne !

Cela me va. La maj des données devrait être assez simple et le rendu interessant par rapport a une couleur unique.

Merci Santanna !

Dernière modification par cyrille (Fri 25 March 2016 18:22)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#21 Mon 21 November 2016 14:45

HANCZYK JM
Participant actif
Lieu: Châlons en Champagne
Date d'inscription: 14 Aug 2011
Messages: 144
Site web

Re: QGIS : Symbologie SVG et regles d'affichage

Bonjour,

je souhaite reproduire la dernière capture d'écran (Capture6.jpg) mais je n'y arrive pas.

Quel est l'écriture exact du filtre ?

Comment appliquer le décalage de chaque symbole ?

à titre d'exemple voici le nom de 3 champs / 22 de mes données à représenter : sont "GARDERIE" "POLICE" "POMPIERS"

Cordialment
Jean-Marc HANCZYK


Jm Hanczyk

Hors ligne

 

#22 Mon 21 November 2016 17:06

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

Re: QGIS : Symbologie SVG et regles d'affichage

Bonjour le decalage se règle dans la légende. Est ce bien ce que tu as fait ?

Hors ligne

 

Pied de page des forums

Powered by FluxBB