Les Jointures de tables (JOIN)

Tous les jeux de données utiles n’ont pas la forme d’un shapefile ou autre format spatial. Souvent il s’agit d’un simple tableau ou une spreadsheet et il faut alors la relier avec vos données géographiques pour effectuer des analyses. Cette opération s’appelle Table Join, ou Jointure de Table, et ce tutoriel explique comment les réaliser dans QGIS.

Description de la tache

Nous allons utiliser un fichier shapefile comprenant les zones de recensement de Californie et les données de population de l’US Census Bureau pour créer une carte de la population de la Californie.

Autres compétences abordées

  • Créer un fichier .csvt pour indiquer le type de données des colonnes d’un fichier CSV.

  • Chargement de fichiers CSV ne contentant pas de données Geometry dans QGIS.

Obtenir les données

L’US Census Bureau <http://www.census.gov/geo/maps-data/data/tiger.html>

Americal FactFinder est un entrepôt des données de recensement pour les Etats-Unis. Vous pouvez utiliser la Advanced Research chercher Topic - Total Population`et `Geographies - All Census Tracts in California`pour créer un fichier CSV et le télécharger. Ce tutoriel utilise les données Total Population 2010 Census Summary File 1.

Les deux jeux de données sont téléchargeables directement aux liens ci-dessous:

tl_2013_06_tract.zip

ca_tracts_pop.csv

Source [TIGER] [USCENSUS]

Procédure

  1. Nous allons d’abord charger les données des zones de recensement. Aller à Couche ‣ Ajouter une couche ‣ Ajouter une couche vecteur.

../_images/1104.png
  1. Ouvrez le dossier où se trouve le fichier zip “tl_2013_06_tract.zip” et sélectionnez-le. QGIS peut ouvrir les fichiers zip directement donc vous n’avez pas besoin de le décompresser au préable.

../_images/250.png
  1. Sélectionnez la couche tl_2013_06_tract.shp et cliquez sur OK.

../_images/330.png
  1. Vous allez voir les zones de recensement chargées dans QGIS.

../_images/422.png
  1. Clique droit sur la couche et sélectionnez Ouvrir la table d’attributs.

../_images/523.png
  1. Regardez attentivement les attributs du shapefile. Pour effectuer une jointure avec cette table, il nous faut un attribut unique et commun pour chaque élément. Dans notre cas, le champ GEOID est un identifiant unique pour chaque élément du fichier tl_2013_06_tract.shp et peut être utilisé pour joindre ce shapefile avec n’importe quelle autre table contenant le même identifiant.

../_images/622.png
  1. Ouvrez le fichier CSV ca_tracts_pop.csv dans un éditeur de texte. Vous remarquerez que chaque ligne du fichier contient des informations sur une parcelle, ainsi qu’un identifiant unique. Ce champ d’identifiant unique est appelé GEO.id2 dans ce fichier CSV. Remarquez également que la colonne D001 contient les valeurs de la population de chaque parcelle.

../_images/721.png
  1. Vous pourriez vous arrêter là pour importer un fichier CSV. Cependant, par défaut toutes les colonnes seront considérée comme Caractère (texte). Cela convient sauf pour le champ D001 qui contient les informations de population. Importé comme texte, cela ne nous permettrait pas d’effectuer des opérations mathématiques sur ce champs. Pour demander à Qgis d’importer un champs sous forme de nombre, il est nécessaire de créer un fichier annexe comportant l’extension .csvt. Ce fichier ne comportera qu’une seule ligne spécifiant le type de données pour chaque colonne. Sauvegardez le fichier en le nommant ca_tracts_pop.csvt dans le même dossier que le .csv original. Vous pouvez aussi télécharger un fichier csvt <../../downloads/ca_tracts_pop.csvt>`_

../_images/820.png
  1. Nous sommes désormais prêts à importer le fichier CSV dans QGIS. Cliquez sur Couche ‣ Ajouter une couche ‣ Ajouter une couche de texte délimité.

../_images/918.png
  1. Explorez le dossier contenant le fichier CSV et sélectionnez-le. Assurez-vous d’avoir selectionné Format de fichier as CSV (comma separated values). Comme nous importons le fichier comme une table, nous devons préciser à QGIS qu’il ne comporte pas de colonne géométrie. Sélectionnez l’option Pas de géométrie (juste la table). Puis, cliquez sur OK.

../_images/1019.png
  1. Le fichier CSV va être importé sous forme de table dans QGIS.

../_images/1122.png
  1. Sélectionnez la couche tl_2013_06_tract. Faites un clic droit dessus et sélectionnez Propriétés.

../_images/1221.png
  1. Dans la fenêtre Propriétés de la couche, selectionnez l’onglet Jointure . Cliquez sur le button + situé en bas de la fenêtre afin de créer une nouvelle jointure de table.

../_images/1318.png
  1. Dans la fenêtre Ajouter une jointure vectorielle, sélectionnez ca_tracts_pop dans le menu déroulant Joindre la couche. Ensuite nous devons sélectionner le champ avec un identifiant unique dans le fichier shapefile et dans le fichier CSV. Sélectionnez GEO.id2 et GEOID en tant que Couche jointe et Couche cible. Cliquez sur OK.

../_images/1417.png
  1. Fermez la fenêtre Propriétés de la couche et retournez sur le fenêtre principale de QGIS. A ce stade, les champs du fichier CSV sont joints avec le shapefile. Faites un clic droit sur la couche tl_2013_06_tract et sélectionnez Ouvrir la table d’attributs.

../_images/1516.png
  1. Vous pouvez maintenant voir une nouvelle série de champs, notamment le champ ca_tracts_pop_D001 qui a été ajouté à toutes les lignes de la table. Vous avez maintenant accès à la valeur de la population de chaque polygone grâce à la jointure avec le fichier CSV. Fermez la table attributaire et retournez sur la fenêtre principale de QGIS.

../_images/1615.png
  1. Faites un clic droit sur la couche tl_2013_06_tract et sélectionnez Propriétés.

../_images/1714.png
  1. Sélectionnez l’onglet Style. Selectionnez Gradué depuis le menu déroulant. Notre objectif étant de créer une carte de population, il nous faut attribuer differentes couleurs à chacun des polygones (census tract) en fonction de la quantité de population. Sélectionnez ca_tracts_pop_D001 en tant que Colonne. Sélectionnez l’échelle de couleur que vous préférez depuis le menu déroulant Palette de couleurs. Dans le menu déroulant Mode, sélectionnez Quantiles (Effectifs égaux). Ensuite, cliquez sur Classer. Vous pouvez voir différentes couleurs attribuées à des classes de populations. Cliquez sur OK.

../_images/1814.png
  1. Vous allez maintenant voir une belle représentation de nos données, basée sur le style et les classes de population que nous venons de définir. Utilisez l’outil Zoom in pour zoomer sur une petite portion de la carte.

../_images/1912.png
  1. Vous avez maintenant une carte détaillée et précise de la population en Californie. Vous pouvez désormais utiliser la même technique pour créer des cartes basées sur diverses données. Il s’agit ici de données états-uniennes, mais le même type de données est disponible en France sur le site de l’Insee.

../_images/209.png
comments powered by Disqus

This work is licensed under a Creative Commons Attribution 4.0 International License