Le carroyage avec QGIS et le plugin QMarxan, c’est facile!

Article en fran√ßais 

Gridding Paris with OpenStreetMap data
“Gridding for the dummies” ūüėČ with Quantum GIS and QMarxan: In this article, I explain the purpose of gridding, why it is such an efficient way to analyse data within a large community of actors. Actually, gridding can be considered as a transcription of the raster format to the vector one where one tile <=> one cell. Thanks to QMarxan, gridding with QGIS is really simple:  you don’t need any knowledge in PostGIS, GRASS and R to do it. That’s what we’ll see: in the end of the post, I detail how to constitute some gridded data through a case study aiming to process a building density analysis on the city of Paris. The article is in French, but the printscreens will be helpful for the understanding. 

All the material used in this article is free: Quantum GIS, OpenStreetMap for the buildings and INSEE (equivalent of US Census) for the population data.

Maillage / Carroyage

Guide du CERTU sur les traitements en carroyage

Le CERTU (Centre d’Etudes sur les R√©seaux, les Transports, l’Urbanisme et les Constructions) a publi√© l’ann√©e derni√®re un guide en t√©l√©chargement gratuit appel√© Traitements g√©omatiques par carreaux pour l’observation des territoires qui d√©crit, par le biais de cas d’√©tude, tout le potentiel que permet la constitution de donn√©es carroy√©es.

Le carroyage est un mode de repr√©sentation des donn√©es vecteur par carreau. Il s’effectue en croisant d’un c√īt√© une grille (soit rectangulaire, soit hexagonale en nid d’abeilles) avec des donn√©es m√©tier. La pr√©cision avec laquelle s’effectuera l’analyse sera alors relative au pas choisi pour la grille. Ce pas diff√®re selon l’√©chelle d’analyse.

Densit√© d’habitants selon l’INSEE

On peut d’ores et d√©j√† disposer de donn√©es carroy√©es sur Internet. C’est le cas des donn√©es INSEE sur le nombre d’habitants disponible en t√©l√©chargement avec un pas de 1 kilom√®tre sur la France enti√®re et 200 m√®tres sur chaque r√©gion. Le Mus√©um National d’Histoire Naturelle propose, lui, une grille-type pour effectuer un calcul, par carreau de 5 ou 10km, du nombre d’esp√®ces d’un certain type de plantes ou d’animaux. Inspire propose aussi des grilles-types.

En quoi ce mode de visualisation est-il si intéressant?

Potentiel du carroyage

– Le format vecteur est g√©n√©ralement choisi comme base de traitements car les utilisateurs du SIG sont plus familiers de l’exploitation de ce format. Pourtant, parfois, les calculs sur raster sont plus appropri√©s. Le carroyage permet de transcrire au format vectoriel des m√©thodes rasters. L’augmentation de la taille d’un carreau s’apparente √† une augmentation de la r√©solution (r√©√©chantillonnage). Il est tout √† fait possible d’effectuer des d√©nombrements, de calculer des moyennes, des √©carts-types au niveau de chaque carreau, ce qui s’apparente aux calculs focaux utilis√©s sur les rasters.

– La transformation de donn√©es fines, pr√©cises sous la forme de carreaux permet de vulgariser la donn√©e, de la simplifier, en sorte. Les mailles obtenues peuvent √™tre confront√©es √† la fois √† un niveau spatial: un carreau par rapport √† ses voisins (par ex. √©tude de clusters), de m√™me que dans le temps: √©tat d’un carreau dans un √©tat ant√©rieur et dans un √©tat actuel (par ex. √©tude de l’√©volution de la population). C’est un mode de visualisation efficace qui “√©limine le bruit” et d√©coupe le territoire en unit√©s √©gales et comparables.



– Une troisi√®me raison qui en fait un support int√©ressant est la possibilit√© d’associer plusieurs dimensions aux carreaux, comme autant de colonnes et d’attributs. On pourra alors adjoindre √† chaque carreau des valeurs issues de diff√©rents domaines: environnement, transport, habitat, et de diff√©rents types: quantitative, qualitative, ordinale. On pourra faire appara√ģtre diff√©rentes th√©matiques sur les choropl√®thes au gr√© des besoins. Cette multi-dimensionnalit√© est difficile √† atteindre avec les rasters dans la mesure o√Ļ les pixels ne peuvent √™tre associ√©s qu’√† un nombre limit√© de valeurs, de plus, positives. Sous R, des objets appel√©s SpatialGridDataFrame et SpatialPixelsDataFrame permettent d’associer √† chaque pixel de nombreux attributs, comme les formats vecteur, mais R est un outil complexe qui n√©cessite un certain temps de prise en main.

– Cette multi-dimensionnalit√© montre bien que le carroyage peut √™tre un support d’analyse partag√© entre des th√©maticiens de diff√©rents m√©tiers. Des urbanistes, des botanistes peuvent se servir d’une m√™me grille comme support pour leurs calculs puis confronter leurs analyses.

En d√©finitive, l’accessibilit√©, la simplification, la multi-dimensionnalit√© font du carroyage un support int√©ressant pour des analyses et des repr√©sentations de donn√©es partag√©es.

Carroyage sous QGIS

Sous Quantum GIS, le carroyage est √† la port√©e de tout g√©omaticien. On peut en r√©aliser sans utiliser ni PostgreSQL, GRASS, ni R m√™me si je ne saurais que vous conseiller de vous investir dans l’apprentissage de ces derniers.

Nativement, on peut l’ex√©cuter par le biais de la fonction “Cr√©ation de Grille” puis “Points dans un Polygone” pour des cartes de densit√©.

Cependant, l’ann√©e derni√®re, un plugin est apparu sur le d√©p√īt d’extension appel√© QMarxan qui permet d’aller plus loin. Il s’agit d’un plugin QGIS d’interfa√ßage avec le logiciel Marxan. 


Voici la d√©finition que l’on trouve sur le site des parcs du Canada quant au logiciel Marxan:
“Marxan a √©t√© mis au point par des chercheurs de l’Universit√© de Queensland pour faciliter le rezonage du parc marin de la Grande Barri√®re et a par la suite √©t√© utilis√© un peu partout dans le monde dans le cadre de projets de planification d’aires marines. Au moyen d’un algorithme d’optimisation, ce programme s√©lectionne des s√©ries de secteurs qui permettent d’atteindre des objectifs de conservation tout en r√©duisant au minimum les incidences socio-√©conomiques sur les utilisateurs des milieux marins et des collectivit√©s c√īti√®res. Les donn√©es qui y sont entr√©es peuvent comporter un large √©ventail d’√©l√©ments/de valeurs li√©s aux aspects √©cologiques, socio-√©conomiques, culturels et √† l’exp√©rience du visiteur, y compris les esp√®ces, les habitats, les activit√©s r√©cr√©atives et les sites culturels.”

Dans cet article, nous n’exploiterons pas tout le potentiel du plugin. Nous verrons sa fonctionnalit√© principale, celle permettant de r√©aliser une grille et d’effectuer des calculs par carreau. Nous ne couvrirons pas l’exploitation des r√©sultats sous Marxan.

Le b√Ęti en √éle-de-France

Le cas d’√©tude sera celui de l’analyse du b√Ęti √† Paris avec la constitution d’un carroyage d√©crivant la densit√© du b√Ęti en terme de nombre et de surface de b√Ętiments. Puis, nous exploiterons le carroyage de l’INSEE afin de coupler les donn√©es concernant le b√Ęti avec la population.

Téléchargement des données

Dans un premier temps, téléchargeons les limites administratives de la ville de Paris:
http://export.openstreetmap.fr/contours-administratifs/export-communes/

Puis les donn√©es du b√Ęti √† partir du site GeoFabrik:
http://download.geofabrik.de/osm/europe/france/ile-de-france.shp.zip

Effectuons une extraction des donn√©s sur la ville de Paris par le biais de l’extension “Requ√™te Spatiale”. Le temps de traitement est tr√®s long!..

Par la suite, les donn√©es b√Ętiments buildings seront transform√©es en Lambert 2 Etendu afin de les coupler par la suite (fin du tutoriel) avec les donn√©es INSEE qui sont dans ce syst√®me de projection. La couche transform√©e se nomme buildings_LA2E.

Dans un premier temps, il faut installer l’extension QMarxan depuis les d√©p√īts-tiers.

R√©alisation d’une grille en nid d’abeilles

Une fois le plugin installé, lançons le module de génération de grille

J’aime bien les grilles en nid d’abeilles qui sont assez esth√©tiques. R√©alisons-en une. Nous choisirons un pas de 200 m√®tres comme pour l’INSEE.

Cr√©ation d’une grille hexagonale sur la base du fichier de b√Ęti

Voici le r√©sultat du carroyage. Notre grille est pour l’instant vide de donn√©es statistiques sur le b√Ęti.

B√Ęti + grille en nid d’abeilles

Calcul de la surface, du nombre de b√Ętiments et de la surface moyenne par carreau

Effectuons le calcul de la surface de b√Ęti par carreau.

Le résultat est intégré à la grille:

Afin d’avoir une bonne visualisation de l’ensemble, nous avons extrait les nids d’abeille comportant une surface sup√©rieure √† 0:



Surface de b√Ęti en 10 classes selon la m√©thode de Jenks

Pour avoir le nombre de b√Ętiments par carreau, on doit tout d’abord g√©n√©rer une couche de points. Nous l’appellerons buildings_ct

Centro√Įdes des b√Ętiments superpos√©s sur la surface b√Ętie


Le nombre de b√Ętiments par carreau peut √™tre indicatif d’un type de b√Ęti: collectif, r√©sidentiel, etc…

Nous pouvons calculer la surface moyenne de b√Ęti par carreau: surface/(nombre de b√Ętiments)

Utilisation de la calculatrice de champ

Voici diff√©rentes choropl√®thes obtenues en superposant le r√©sultat du carroyage avec les donn√©es OpenStreetMap gr√Ęce au plugin OpenLayers de QGIS.

Nombre de b√Ętiments, surface de b√Ęti et surface moyenne sur couches OpenStreetMap Paris

Couplage donn√©es nombre d’habitants et b√Ęti sur la base d’une grille pr√©-existante

On peut aussi lancer les calculs en se basant sur une grille autre, par exemple celle de l’INSEE, et ensuite coupler les donn√©es habitants et b√Ęti.

Les zones d’activit√© pourraient ainsi appara√ģtre comme des zones de b√Ęti comprenant peu d’habitants.

T√©l√©chargeons le carroyage de l’INSEE qui se trouve en Lambert 2 Etendu. Il contient les estimations du nombre d’habitants. Un pr√©alable, comme au d√©part, est de ne prendre que les carreaux situ√©s sur Paris.

Associons ces donn√©es du b√Ęti avec ces donn√©es de population en utilisant le carroyage existant:

 Le r√©sultat est alors int√©gr√© dans la grille de l’INSEE:

ajout de la colonne area_built au carroyage de l’INSEE

Ouvrons le fichier dbf issu du carroyage sous OpenOffice, enregitrons-le au format ods et r√©alisons un graphique bivari√© avec en abcisse la surface de b√Ętiments et en ordonn√©e le nombre d’habitants.

fichier ods obtenu à partir du dbf

Nous pouvons voir quelle relation existe entre le nombre d’habitants et la surface de b√Ęti, ainsi qu’identifier des carreaux qui √©chappent √† la tendance principale.

Identification d’un point √©chappant √† la “tendance”

Remarque: A vrai dire, il est difficile de d√©gager une quelconque tendance √† partir de ce graphique car dans le cas du b√Ęti, la surface moyenne ne suffit pas √† pr√©dire le nombre d’habitants. Il faut aussi int√©grer la hauteur du b√Ętiment ou son nombre d’√©tages. Cela dit, le but de cet exemple est de montrer comment le carroyage permet de confronter deux (voire plus) variables de mani√®re efficace par le biais d’une analyse bivari√©e (ou multi-vari√©e).



 Nota Bene: dans la premi√®re version de QMarxan, l’utilisation de grilles rectangulaires g√©n√®re des erreurs. Aussi la derni√®re version a-t-elle √©t√© utilis√©e pour l’int√©gration des informations du b√Ęti dans le carroyage de l’INSEE.

Pour ceux qui souhaitent aller plus loin dans le carroyage, je vous conseille d’utiliser R avec la librairie sp. La fonction over( ) permet de croiser dans n’importe quel ordre des donn√©es vectorielles et rasters ainsi que d’effectuer une infinit√© de calculs √† l’int√©rieur de chaque carreau, ceci gr√Ęce √† une fonction personnelle fn: over(x, y, returnList = FALSE, fn = NULL, …). On peut alors envisager de calculer l’√©cart-type ou m√™me l’indice √©cologique de diversit√© de Shannon. Absolument tout est possible!
Plus d’infos sur les m√©thodes d’agr√©gation spatiale avec R ici: http://cran.r-project.org/web/packages/sp/vignettes/over.pdf


8 r√©flexions sur ¬ę Le carroyage avec QGIS et le plugin QMarxan, c’est facile! ¬Ľ

  1. Bonjour,
    Merci pour ces informations.
    Ce post date de 2012, mais je tente quand même, je bataille depuis plusieurs jours avec les données de l'INSEE et je n'ai pas trouvé le moyen de convertir (x_laea, y_laea) en (longitude, latitude). Même en regardant le site http://twcc.fr/ et en sélectionnant la bonne projection, le résultat est incohérent.
    Existe-t-il une fonction mathématique me permettant de passer des données de l'INSEE à des coordonnées géographiques que je pourrais facilement utiliser sur du Leaflet par exemple ?
    Merci d'avance pour tout conseil.

  2. Bonjour,
    merci pour cet article intéressant. Juste une petite remarque : le lien vers le doc du CERTU ne fonctionne pas.
    Cyril

Répondre à Unknown Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.