[Carto.Flux_3-1] Le voisinage spatial binaire (Cij=1)

Ce billet est issu de l’annexe 3 de Programmes pour RStudio annexés (Bahoken, 2016a). Il fait partie d’une série de procédures permettant de sélectionner les flux selon des critères liés à l’espacement des lieux. L’objectif de la construction de ces matrices d’espacement des lieux (éloignement, voisinage …) est qu’elles servent ensuite à filtrer la matrice de flux (Fij) observés, de manière à ne représenter que les flux répondant au critère (d’éloignement, de distance, …) retenu.

–> Le critère utilisé ici est une métrique de proximité binaire, notée (Cij=1). Elle traduit le fait que les couples de lieux (i,j) sont limitrophes (Cij=1) ou non (Cij=0).
Continuer la lecture

[Carto.Flux_2] Procédure de cartographie d’une matrice de flux

Ce billet est issu de l’annexe 2 de Programmes pour RStudio annexés (voir réf. en note).

Cette procédure est générale, elle permet de cartographier n’importe laquelle des matrices de liens (Lij) ou de flux (Fij), préalablement réduite ou non. Dans ce dernier cas, il est souvent nécessaire d’appliquer une procédure de sélection de l’information à représenter, une version minimale est présentée (sinon consulter les billets dédiés au choix d’un critère de sélection). La préparation des données est supposée avoir été réalisée en amont de cette étape de représentation. On dispose donc d’une matrice (Fij) prête à cartographier.

Données

L’exemple d’application est la matrice de flux domicile-travail de l’Isère, préparée ici.

– La matrice de flux de l’Isère (fermée et carrée) au format liste (.csv) : liste_isere
– Le fond de carte des communes de l’Isère, au format shapefile (.shp) : Isere_com
– La liste des identifiants (code INSEE) des communes (.csv) : CODE_Isere

1- Description de la méthode

Continuer la lecture

[Carto.Flux_1] Transformation d’une matrice de flux fermée non carrée en une matrice de flux fermée carrée

Ce billet est issu de l’annexe 1 de Programmes pour RStudio (voir réf.). Il décrit une procédure permettant de transformer une matrice de flux non carrée (n*m), formée de (n) lignes et de (m) colonnes d’effectifs différents, en une matrice de flux carrée où le nombre de lignes est égal au nombre de colonnes (n*n). On mobilise pour cela une liste (n) d’identifiants contenant l’ensemble des lieux de la zone d’étude.

Données

1) La matrice est celle des flux domicile-travail du département de l’Isère, intitulée : source. Elle a été extraite du fichier de détail Mobilités Professionnelles des Individus / déplacements commune de résidence / commune de travail (MOBPRO) de l’INSEE, pour l’année 2010. Cette matrice fermée étant non carrée, un certain nombre de traitements que nous proposons ne pourra être réalisé, d’où le présent billet (voir ci-dessous justification).

2) Le FOND de carte est celui des communes du département de l’Isère (38) : Isere_com. Ce fond est extrait du fichier GEOFLA COM de l’IGN.

3) De ce fond de carte, nous en avons extrait une liste des identifiants des communes (des codes INSEE) : CODE_Isere

1- Justification
Lorsqu’une matrice fermée n’est pas carrée, c’est-à-dire que le nombre de lignes et de colonnes diffère, il n’est pas possible de la décomposer selon la procédure présentée dans le Chapitre 3, en utilisant sa propriété générale de symétrie / permutation des valeurs de flux au regard de la diagonale principale de la matrice. La transposition d’une matrice non carrée n’ayant en fait pas de sens

Pour pouvoir transposer une matrice fermée non carrée, il faut donc la rendre carrée (!).

Continuer la lecture

[Carto.Flux_0] Contribution à la cartographie d’une matrice de flux

La recherche en visualisation est impossible sans le développement de prototypes de logiciels permettant l’élaboration et la validation des idées”. Natalia et Gennady Andrienko.

Préambule : Cette série de billets [Carto.Flux] correspond aux programmes commentés que j’ai développés pour Rstudio dans le cadre de ma thèse1 en géographie, et qui font l’objet d’une Annexe dédiée.

Comme annoncé dans le manuscrit, et lors de ma soutenance, je livre ces programmes “en l’état” à la communauté. L’objectif est de contribuer au développement de la cartographie de flux de toutes sortes (migrants, migrations, commerciaux, financiers, de télécommunication,…). Aussi d’assurer le caractère reproductible de l’essentiel des traitements et des figures présentés dans mes chapitres 2, 3, 5, 7, 8 et 9. Cela permettra, je l’espère, de rendre mes propositions généralisables et facilement intégrables dans les (ou de futurs) packages. Ces programmes ne sont néanmoins pas toujours optimisés et toutes mes sorties graphiques nécessitent généralement d’être retravaillées dans un logiciel de graphisme. Il est désormais possible de recourir de manière complémentaire à la section Link/Flow Map du package Cartography de Timothée Giraud et Nicolas Lambert sorti entre-temps, il est disponible ici.

LISTE (non exhaustive) DES BILLETS PROPOSES

–> Ces billets seront progressivement renseignés,voire complétés, dans les semaines qui viennent. (dernière MAJ : 20 avril 2016).

Continuer la lecture

Le package cartography

cartocomp

Conçu comme une boite à outil cohérente et documentée dédiée à la cartographie thématique, le package cartography permet de créer des cartes avec R.
 
Les représentations les plus classiques sont bien entendu disponibles (symboles proportionnels, cartes choroplèthes, cartes qualitatives) et d’autres modes de représentations souvent difficiles à mettre en œuvre dans un logiciel de cartographie sont aussi proposées (cartes de flux, discontinuités, carroyages, cartes par points…).
Le package propose également quelques fonctionnalités supplémentaires : palettes de couleurs (simples et doubles gradations dissymétriques), éléments d’habillage (échelle , orientation, titre, sources, étiquettes…), des légendes paramétrables, et enfin l’accès à des API cartographiques
 
Ce package est développé au sein de l’UMS RIATE par Timothée Giraud et Nicolas Lambert. La version stable est sur le CRAN, la version de développement est hébergée sur GitHub.
 
Pour avoir un aperçu rapide de la manière dont on peut utiliser le package, cette vignette développe, via des scripts commentés, quelques exemples de création de cartes.

Ci-dessous vous trouverez le code qui permet de générer la composition cartographique réalisée avec le package : Continuer la lecture

ClustGeo : Un package de CAH avec contraintes de proximité géographique

Lors des Quatrièmes Rencontres R (24-26 juin 2015 à Grenoble), Amaury Labenne (de l’IRSTEA) a présenté son package ClustGeo qui permet de réaliser des Classifications Ascendantes Hiérarchiques avec contraintes de proximité géographique. Voici la présentation qu’il en fait :

La Classification Ascendante Hierarchique (CAH) est une méthode bien connue de clustering d’observations qui consiste à regrouper dans une même classe des observations qui se ressemblent. Cependant, lorsque les observations sont des unités spatiales, on désire parfois que des observations proches géographiquement se retrouvent dans une même classe sans trop dégrader la qualité de la partition. La méthode hclustgeo du package ClustGeo permet d’intégrer de l’information géographique au sein de la CAH en utilisant un critère d’hétérogénéité de Ward sur deux matrices différentes. Le package ClustGeo permet également d’afficher les typologies obtenues sur une carte par le biais des shapefiles relatifs aux observations.

La présentation qu’il a donné aux Rencontres R est disponible ici.
Le package est disponible sur le CRAN et sur GitHub.

Reilly, Huff et Stewart : le package SpatialPosition

Les modèles d’interaction spatiale sont utilisés pour décrire-expliquer-prévoir les interactions entre les lieux. On distingue deux grandes familles de modèles selon le produit de l’interaction auquel on s’intéresse : l’interaction peut être saisie à travers des flux entre les lieux (flux de personnes, de marchandises, de richesse, d’information , etc.) ; l’interaction peut aussi être saisie à travers l’influence exercée par un lieu sur tous les autres (aire de marché d’un commerce, aire d’influence d’une ville, etc.). Ce second type est désigné par le terme de modèle de position. Le nouveau package SpatialPosition permet de calculer et de visualiser les résultats de ces modèles de positions : modèle de Reilly, modèle de Huff et modèle de Stewart (potentiels de population).

Le package SpatialPosition est développé par Timothée Giraud (UMS RIATE), Hadrien Commenges (UMR Géographie-cités) et Joël Boulier (UMR Géographie-cités). Il est disponible sur le CRAN. Pour plus d’information et de ressources sur ce type de modèles, voir la vignette associée au package.

FIT : un outil pour calculer des indicateurs d’accessibilité et de potentiel

Dans le cadre d’un projet ESPON, l’UMS RIATE a récemment mis en place un outil en ligne pour calculer des indicateurs d’accessibilité et de potentiel à l’échelle européenne. Cet outil, baptisé FIT (Functional Indicators Tool) :

  • produit des cartes et des graphiques,
  • permet de comparer l’accessibilité des NUTS (niveau NUTS2 et NUTS3) à plusieurs dates,
  • permet de comparer l’accessibilité des NUTS avec plusieurs moyens de transport,
  • dispose d’une option de calcul des indicateurs avec et sans effet de frontière,
  • permet de télécharger les cartes, les graphiques et les données.

Cet outil (FIT – Functional Indicators Tool) est accessible sur ce site dédié.

Tous les calculs ont été réalisés avec R, toutes les cartes également.

Couplage R – GRASS : appeler des fonctions GRASS dans R

GRASS est un logiciel SIG libre qui dispose de nombreuses fonctions de traitement d’objets spatiaux, aussi bien raster que vectoriel. Le tutoriel suivant montre un exemple de couplage entre R et GRASS, plus précisément il montre comment appeler une fonction de GRASS dans R. La fonction utilisée est v.generalize qui permet de simplifier la géométrie d’un objet vectoriel.

Le tutoriel au format html et pdf ainsi que les données nécessaires sont disponibles avec ce lien de téléchargement : CouplageRGRASS

 

Modèles de régression multiniveaux avec R

 Multiniveaux avec R

 

pic-multilevelLes modèles multiniveaux se basent sur des données dites “hiérarchiques”, c’est-à-dire comprenant deux ou plusieurs niveaux (ceux-ci pouvant être sociaux ou géographiques, par exemple : les niveaux de l’élève, de son établissement et de l’académie; les niveaux de la ville, de sa région d’appartenance et du pays concerne). Leur utilisation se base sur le principe que les différents niveaux interagissent dans les deux sens, et s’intègre particulièrement bien au paradigme de la complexité (Byrne, 1998).

L’analyse multiniveaux permet ainsi d’éviter les erreurs d’interprétation écologique (attribuer à des entités individuelles les corrélations statistiques observées à l’échelle agrégée) et atomiste (attribuer aux entités individuelles les facteurs et contraintes contextuels), en intégrant les deux niveaux dans un même modèle (Courgeau, Baccaïni, 1997).

Cette séance est consacrée à leur utilisation en géographie avec R.

 

Tutoriel de la séance elementR du 7 Novembre 2014 :

Format html : Boularan-Cottineau-multilevel-Tuto-corrections2.html

Format Rmd : Boularan-Cottineau-multilevel-Tuto-corrections2.Rmd

 

Ressources pour la séance :

Données communales : data-communes-complete.csv et métadonnées : metadata-communes-complete

Shape files des aires urbaines : Shape-AU

Shape files des unités urbaines : Shape-UU

 

Le téléchargement des shape files des communes est accessible ici via le site de GEOFLA (IGN).

 

Ressources complémentaires :

L’article de Joël Gombin : https://hal.archives-ouvertes.fr/file/index/docid/422081/filename/ST5-13Gombin.pdf

L’article de Daniel Courgeau et Brigitte Baccaïni : http://www.jstor.org/stable/1534616

Un (très) récent article comparant l’apport des modèles multiniveaux par comparaison avec des modèles multi-agents : http://jasss.soc.surrey.ac.uk/17/4/3.html

La documentation du package lme4 par Douglas Bates : http://lme4.r-forge.r-project.org/lMMwR/lrgprt.pdf

Le site du Center for Multilevel Modelling (CMM) : http://www.bristol.ac.uk/cmm/