Faire varier les caractéristiques des symboles
QGIS permet de faire varier pratiquement toutes les caractéristiques des symboles en fonction de la valeur de données attributaires.
Ainsi, il est possible d'affecter à une ligne représentant une route une largeur de trait qui sera proportionnelle à la valeur numérique d'un attribut "nombre de voies" ou "largeur" ou "trafic".
Il est important de noter que cette fonctionnalité est indépendante du style de représentation utilisé (symbole unique, gradué, catégorisé) : la variation du symbole viendra donc se rajouter au style de représentation.
Par exemple, comme ci-dessous, on peut représenter le réseau routier avec un style Catégorisé pour distinguer les routes à 1 chaussée et les routes à 2 chaussées, tout en affectant à ces symboles de catégories une largeur de trait variable en fonction de la largeur de la route.
![](../res/ligne_blanche_2.png)
Pour faire varier les symboles en fonction des données attributaires il faut utiliser le bouton 'valeur définies par les données' (par exemple pour la Largeur d'un symbole de ligne)
Par exemple ici on a double-cliqué sur le symbole de la classe 'NB_VOIES' = 2 et on modifie la source de la largeur du symbole en prenant le champ LARGEUR comme source de données.
nb : la source de données peut être affectée à la largeur globale du symbole ou à la largeur de l'une de ses composantes (ici ligne jaune ou noire), suivant que l'on clique sur le symbole ou l'une de ses composantes.
Conseil : Attention à la lisibilité de la carte
Il faut être vigilant sur les deux points suivants :
Faire varier les symboles en fonction des données attributaires peut compliquer la lecture de la carte en introduisant une dimension supplémentaire qui doit être compréhensible pour le lecteur et correspondre à l'objectif initial de la carte.
La proportionnalité des symboles de lignes n'est pas affichée dans la légende, à la différence des rendus catégorisés et gradués qui présentent de ce fait un avantage certain en terme de compréhension de la symbologie utilisée.