Nous utilisons des cookies pour le bon fonctionnement du site. En continuant à naviguer sur ce site, vous acceptez l’utilisation de cookies.
J’accepte
Besoin d'aide ? Demandez à être rappelé(e) par Eurêkarto
Vous pouvez également nous appeler
+33 6 77 51 54 70

5 expressions QGIS à connaître pour gagner du temps en cartographie - le Guide Eurêkarto

7 août 2026, 12:00
9 min
97
Les expressions QGIS permettent de filtrer des données, sélectionner des entités, construire des étiquettes ou encore adapter automatiquement un texte à la valeur d’un champ. Une fois leur logique comprise, quelques lignes suffisent pour automatiser des opérations qui seraient longues et répétitives si elles étaient réalisées manuellement.
Dans ce guide, nous vous présentons cinq expressions simples et particulièrement utiles en cartographie. Nous les appliquons à une couche de villes issue de Natural Earth pour conserver les principales villes, isoler un pays, exclure une capitale, créer une étiquette sur deux lignes et afficher un texte conditionnel.

Сontenu

1. Pourquoi utiliser les expressions dans QGIS ?
2. Où saisir une expression dans QGIS ?
3. Filtrer les villes avec IN
4. Sélectionner les entités d’un pays
5. Exclure la capitale
6. Créer une étiquette sur deux lignes
7. Afficher un texte conditionnel avec CASE WHEN
8. Combiner plusieurs expressions
9. Les bonnes pratiques à connaître
10. Aller plus loin avec QGIS
11. FAQ
12. Résumé

Pourquoi utiliser les expressions dans QGIS ?

Une couche géographique ne contient pas seulement des formes. Chaque entité est associée à des informations enregistrées dans sa table attributaire : nom, population, catégorie, code pays, statut administratif, niveau d’importance cartographique...

Les expressions permettent d’interroger ces informations et de les utiliser dans de nombreux contextes. Elles servent notamment à :

  • sélectionner uniquement les entités qui répondent à un ou plusieurs critères ;
  • filtrer les objets à afficher sur la carte ;
  • construire une symbologie fondée sur des règles ;
  • créer des étiquettes dynamiques à partir de plusieurs champs ;
  • effectuer des calculs dans la table attributaire ;
  • faire varier une couleur, une taille ou un texte selon les données ;
  • automatiser des traitements sans modifier manuellement chaque entité.
Une même expression peut donc être réutilisée à plusieurs étapes de la réalisation d’une carte. Elle rend le projet plus rapide à mettre à jour : lorsque les données changent, l’affichage ou le texte est recalculé automatiquement.
Guide Eurêkarto présentant cinq expressions QGIS pour filtrer des villes, sélectionner un pays et créer des étiquettes.

Où saisir une expression dans QGIS ?

Le constructeur d’expressions est accessible depuis plusieurs outils de QGIS. Selon votre objectif, vous pouvez notamment l’ouvrir depuis :

  • la table attributaire, avec Sélectionner les entités à l’aide d’une expression ;
  • les propriétés de la couche, dans l’onglet Étiquettes, en cliquant sur le bouton d’expression placé à côté de la valeur à afficher ;
  • la symbologie Ensemble de règles, pour définir les entités concernées par chaque règle ;
  • la Calculatrice de champs, pour créer ou mettre à jour une colonne ;
  • les paramètres définis par les données, reconnaissables à leur bouton situé à droite de nombreuses options de style ;
  • l’algorithme Extraire selon une expression, pour produire une nouvelle couche à partir d’un critère.
Dans l’éditeur, la liste de gauche permet de retrouver les champs de la couche, les opérateurs et les fonctions disponibles. QGIS affiche également un aperçu du résultat et signale les erreurs de syntaxe avant la validation.

À retenir : les noms de champs sont placés entre guillemets doubles, tandis que les valeurs textuelles sont placées entre apostrophes.

➡️ "NOM_DU_CHAMP" = 'Valeur recherchée'

Filtrer les villes avec IN

L’expression

➡️ "SCALERANK" IN (0, 1, 2, 3, 4)

L’opérateur IN vérifie si la valeur d’un champ appartient à une liste de valeurs. Ici, QGIS conserve toutes les villes dont le champ SCALERANK vaut 0, 1, 2, 3 ou 4.

Dans la couche Populated Places de Natural Earth, le champ SCALERANK peut être utilisé pour limiter le nombre de villes visibles selon leur importance cartographique. Plus la valeur est basse, plus la ville est destinée à apparaître sur une carte à petite échelle. Cette information permet d’éviter de surcharger la carte avec trop de points et d’étiquettes.

Cette expression est utile pour :

  • sélectionner les villes les plus importantes d’une couche mondiale ;
  • limiter le nombre de localités affichées à l’échelle d’un continent ;
  • construire plusieurs niveaux d’affichage selon l’échelle de la carte ;
  • alléger rapidement une carte trop chargée.
Dans ce cas précis, l’expression suivante produirait également le même résultat :
"SCALERANK" <= 4

La formulation avec IN devient cependant particulièrement intéressante lorsque les valeurs recherchées ne se suivent pas, par exemple IN (0, 2, 5).

À retenir : SCALERANK est un champ propre aux données utilisées ici. Dans une autre couche, vous devrez adapter l’expression au nom du champ et à la méthode de hiérarchisation disponibles.
Expression QGIS filtrant les principales villes européennes avec l’opérateur IN et le champ SCALERANK.
©Eurêkarto

Sélectionner les entités d’un pays

L’expression

➡️ "ADM0_A3" = 'FRA'

Cette expression conserve les entités dont le champ ADM0_A3 contient la valeur FRA. Dans les données Natural Earth utilisées pour cet exemple, ce code correspond à la France.
Le signe = sert à comparer la valeur du champ avec la valeur recherchée. QGIS renvoie vrai pour les entités qui respectent la condition et faux pour les autres.

Cette expression peut servir à :

  • sélectionner toutes les villes appartenant à un pays ;
  • n’afficher les étiquettes que sur un territoire précis ;
  • appliquer une symbologie particulière aux entités d’un État ;
  • extraire les données d’un pays dans une nouvelle couche.
Vous pouvez remplacer FRA par une autre valeur présente dans votre table attributaire :
"ADM0_A3" = 'ESP'

Cette seconde expression sélectionne les entités rattachées à l’Espagne dans la même couche.

À retenir : vérifiez toujours les valeurs réellement contenues dans le champ. Selon la source de données, le code utilisé peut être un code ISO, un code interne ou le nom complet du pays.
Expression QGIS sélectionnant la France avec le champ ADM0_A3 sur une carte de l’Europe.
©Eurêkarto

Exclure la capitale

L’expression

➡️ "ADM0CAP" <> 1

L’opérateur <> signifie « différent de ». Dans la couche utilisée, le champ ADM0CAP vaut 1 lorsqu’une ville est une capitale nationale. L’expression conserve donc les villes qui ne possèdent pas ce statut.

Elle est pratique pour :

  • afficher les villes secondaires sans la capitale ;
  • appliquer un style distinct aux capitales et aux autres villes ;
  • éviter d’afficher deux fois la capitale lorsque celle-ci se trouve déjà dans une couche dédiée ;
  • produire une sélection de villes non capitales.
Si le champ peut contenir des valeurs nulles, utilisez une version plus robuste :
coalesce("ADM0CAP", 0) <> 1

La fonction coalesce() remplace ici une éventuelle valeur nulle par 0 avant d’effectuer la comparaison.

À retenir : une condition appliquée à une valeur nulle ne renvoie pas automatiquement vrai ou faux. Si votre sélection semble incomplète, vérifiez la présence de valeurs NULL dans la table attributaire.
Expression QGIS excluant les capitales d’une couche de villes européennes avec le champ ADM0CAP.
©Eurêkarto

Créer une étiquette sur deux lignes

L’expression

➡️ concat("NAME_FR", '\n', "POP_MAX")

La fonction concat() assemble plusieurs textes ou valeurs dans une seule chaîne de caractères. Dans cet exemple, QGIS affiche le nom français de la ville, puis sa population sur une deuxième ligne.

Le caractère \n crée un saut de ligne. L’étiquette obtenue prend donc la forme suivante :

➡️ Paris 11 020 000

Cette méthode permet notamment de réunir dans une même étiquette :

  • un nom de lieu et sa population ;
  • un pays et sa capitale ;
  • un toponyme et une catégorie ;
  • une valeur et son unité ;
  • plusieurs niveaux d’information sans allonger excessivement l’étiquette.
Pour obtenir une population plus lisible et ajouter une unité, vous pouvez enrichir l’expression :

concat( "NAME_FR", '\n', format_number("POP_MAX", 0), ' hab.' )

La fonction format_number() affiche ici la population sans décimale et applique le séparateur de milliers correspondant aux paramètres régionaux de QGIS.

À retenir : concat() convertit automatiquement les nombres en texte et ignore les valeurs nulles en les traitant comme des chaînes vides. Elle est donc souvent plus sûre que l’opérateur || pour assembler plusieurs champs.
Expression QGIS créant des étiquettes sur deux lignes avec le nom et la population des villes européennes.
©Eurêkarto

Afficher un texte conditionnel avec CASE WHEN

L’expression

➡️ CASE WHEN "ADM0CAP" = 1 THEN 'Capitale' ELSE 'Ville' END

La structure CASE WHEN permet d’afficher un résultat différent selon qu’une condition est remplie ou non.

QGIS lit ici l’expression de la manière suivante :

  • si le champ ADM0CAP vaut 1, afficher « Capitale » ;
  • dans tous les autres cas, afficher « Ville ».
Cette logique conditionnelle peut être utilisée dans une étiquette, la calculatrice de champs ou un paramètre défini par les données. Elle permet par exemple de :

  • différencier automatiquement une capitale d’une autre ville ;
  • convertir un code numérique en texte compréhensible ;
  • attribuer une catégorie à partir d’une valeur ;
  • faire varier le contenu d’une étiquette ;
  • créer une nouvelle colonne de classement.
Une structure CASE peut comporter plusieurs conditions :

CASE WHEN "ADM0CAP" = 1 THEN 'Capitale nationale' WHEN "WORLDCITY" = 1 THEN 'Ville mondiale' ELSE 'Autre ville' END

QGIS évalue les conditions dans l’ordre et renvoie le résultat associé à la première condition satisfaite.

À retenir : pensez toujours à prévoir un résultat ELSE. Sans lui, les entités qui ne correspondent à aucune condition recevront une valeur nulle.
Expression conditionnelle QGIS distinguant les capitales des autres villes européennes dans les étiquettes.
©Eurêkarto

Combiner plusieurs expressions

L’intérêt des expressions apparaît pleinement lorsque plusieurs critères sont associés. Les opérateurs AND et OR permettent de relier différentes conditions.

Pour conserver les principales villes françaises tout en excluant la capitale, utilisez par exemple :

"ADM0_A3" = 'FRA' AND "SCALERANK" IN (0, 1, 2, 3, 4) AND coalesce("ADM0CAP", 0) <> 1

Les trois conditions doivent ici être vraies en même temps : la ville doit se trouver en France, appartenir aux rangs sélectionnés et ne pas être une capitale nationale.

Avec OR, une seule des conditions doit être satisfaite. L’expression suivante conserve les villes françaises ou espagnoles :

"ADM0_A3" = 'FRA' OR "ADM0_A3" = 'ESP'

Elle peut aussi être écrite plus simplement avec IN :
"ADM0_A3" IN ('FRA', 'ESP')

Enfin, vous pouvez combiner un saut de ligne et un texte conditionnel pour produire une étiquette entièrement dynamique :

concat( "NAME_FR", '\n', CASE WHEN "ADM0CAP" = 1 THEN 'Capitale' ELSE 'Ville' END )

Les bonnes pratiques à connaître

Pour écrire des expressions fiables et faciles à réutiliser, gardez ces quelques réflexes :

  • Vérifiez le nom et le type des champs. Un champ numérique ne s’utilise pas exactement comme un champ textuel.
  • Respectez les guillemets. Utilisez "champ" pour le nom d’un champ et 'texte' pour une valeur textuelle.
  • Contrôlez les valeurs dans la table attributaire. Une faute, une variante de casse ou un espace invisible peut empêcher une correspondance.
  • Tenez compte des valeurs nulles. La fonction coalesce() permet de prévoir une valeur de remplacement.
  • Testez l’expression sur quelques entités. L’aperçu du constructeur d’expressions aide à vérifier le résultat avant de l’appliquer à toute la couche.
  • Utilisez des parenthèses pour les expressions complexes. Elles rendent les priorités entre AND et OR explicites.
  • Adaptez les champs à votre source. Les expressions de ce guide sont universelles, mais les champs SCALERANK, ADM0_A3, ADM0CAP, NAME_FR et POP_MAX appartiennent à la structure des données utilisées pour l’exemple.
  • Enregistrez les expressions récurrentes. QGIS permet de sauvegarder des expressions utilisateur afin de les retrouver dans d’autres projets.

Besoin d'aller plus loin sur QGIS ?

Ces cinq expressions constituent une excellente base pour filtrer et mettre en forme vos données. Mais le moteur d’expressions de QGIS permet d’aller beaucoup plus loin : automatiser une symbologie, hiérarchiser des étiquettes, effectuer des calculs, manipuler des géométries ou adapter le rendu d’une carte à son échelle.

Chez Eurêkarto, la formation Débuter avec QGIS vous accompagne pas à pas pour :

  • prendre en main l’interface et comprendre la logique d’un SIG ;
  • importer et organiser des données géographiques ;
  • utiliser la table attributaire et sélectionner des entités ;
  • construire une symbologie claire et efficace ;
  • créer et hiérarchiser des étiquettes ;
  • produire une mise en page cartographique complète ;
  • gagner en autonomie grâce à une méthode directement appliquée à la cartographie.
➡️ Découvrir la formation « Débuter avec QGIS »

  • Si vous maîtrisez déjà les fondamentaux et souhaitez approfondir les analyses, les automatisations et les traitements, allez plus loins avec notre formation intermédiaire sur QGIS
➡️ Découvrir la formation « Aller plus loin avec QGIS »

FAQ : utiliser les expressions dans QGIS

Les expressions QGIS permettent d’interroger et de mettre en forme les données sans effectuer chaque opération manuellement. L’opérateur IN sélectionne plusieurs valeurs, = isole une valeur précise, <> exclut une catégorie, concat() assemble plusieurs informations et CASE WHEN produit un résultat conditionnel. Combinées avec AND ou OR, ces expressions permettent de construire des filtres et des étiquettes adaptés aux besoins de chaque carte.

Résumé

Vous rêvez de créer des cartes qui impressionnent ?
Téléchargez notre guide exclusif comprenant 15 secrets de cartographes pour réaliser des cartes qui mêlent technique et esthétique.
Découvrez des astuces concrètes pour rendre vos cartes plus claires, plus belles et plus précises.
Partager

Avec cet article lire

    Cours en ligne Adobe Illustrator pour la cartographie

    Entrez dans le monde de la cartographie en apprenant à utiliser le célèbre logiciel Adobe Illustrator. En seulement quelques heures, vous aurez acquis les bases théoriques de la cartographie et pourrez réaliser en toute autonomie des cartes lisibles et esthétiques!
    Made on
    Tilda