Supprimer le message « no proj_defs.dat in PROJ.4 shared files » de rgdal sur Ubuntu

La note suivante apparait lors des utilisations de rgdal liées aux projections :
NOTE: rgdal::checkCRSArgs: no proj_defs.dat in PROJ.4 shared files
Ce message est dû à l’utilisation de la librairie PROJ (dans sa version 4.9.1), à laquelle il manque un fichier de configuration.

Le fichier en question (proj_def.dat) doit être téléchargé et placé dans le dossier des projections de la librairie.
Chez moi, ce dossier est celui-ci : /usr/share/proj/.

Les détails du bug sont discutés sur la liste de discussion R-sig-Geo.

Create and integrate maps in your R workflow with the cartography package

The cartography package allows various cartographic representations such as proportional symbols, chroropleth, typology, flows or discontinuities. In addition it also proposes some useful features like cartographic palettes, layout (scale, north arrow, title…), labels, legends or access to cartographic API to ease the graphic presentation of maps. Continuer la lecture de Create and integrate maps in your R workflow with the cartography package

Mise à jour du package osrm (version 2.0.0)

Le package osrm assure le lien entre R et l’API d’OSRM. OSRM est un service de routage basé sur les données OpenStreetMap.
Ce package permet d’obtenir le temps de trajet, la distance et le plus court chemin entre deux points via le réseau routier d’OpenStreetMap. Il est également possible d’obtenir des matrices de distances entre deux séries de points.

Pour suivre l’évolution de l’API qu’il interface, j’ai mis à jour le package osrm.
Vue l’ampleur des modifications sur l’API, la compatibilité descendante n’est pas assurée, les codes anciens ne fonctionneront plus. Continuer la lecture de Mise à jour du package osrm (version 2.0.0)

Temps de trajet et matrices de distances avec R et OpenStreetMap

Le package osrm assure le lien entre R et l’API d’OSRM. OSRM est un service de routage basé sur les données OpenStreetMap.
Ce package permet d’obtenir le temps de trajet, la distance et le plus court chemin entre deux points via le réseau routier d’OpenStreetMap. Il est également possible d’obtenir des matrices de distances entre deux séries de points. Continuer la lecture de Temps de trajet et matrices de distances avec R et OpenStreetMap

Géocoder en masse avec R et sans Google Maps

Il existe différentes solutions pour géocoder des adresses ou des lieux avec R. Les plus fréquemment citées sont basées sur des services commerciaux et utilisent des données non libres. D’autres utilisent des logiciels libres et des données libres (OpenStreetMap). La nature commerciale / non commerciale, libre / non libre d’une solution a des implications sur la construction et la diffusion des données géocodées.
Je propose ici une petite revue des différentes possibilités de géocodage dans R ainsi qu’un package pour interroger l’une des API de géocodage basé sur OpenStreetMap (photon). Continuer la lecture de Géocoder en masse avec R et sans Google Maps

Quatrièmes Rencontres R

J’étais conférencier invité aux Quatrièmes Rencontres R qui ont eu lieu à Grenoble du 24 au 26 juin et j’ai pu y faire la présentation suivante : Représentation et traitement de l’information géographique.
Le plan de la présentation :

Les API de cartographie
Représentations cartographiques
Opérations de géotraitements
Lissage spatial
Ressources

La présentation est un peu lourde (~20 Mo) et peut donc peut mettre un peu de temps à se charger. Je mettrai en ligne les données utilisées et le script de création de la présentation d’ici quelques jours.
[MAJ]Données et scripts sont disponibles ici.[/MAJ]

R à l’usage des Sciences Sociales

Le jeudi 21 mai 2015, dans le cadre des séminaires « R à l’Usage des Sciences Sociales » organisés par l’Ined et l’Ehess j’ai pu faire une présentation intitulée « Représentation et traitement de l’information géographique avec R : usage avancé ». Comme d’habitude le code et les données sont disponibles pour reproduire les analyses. Continuer la lecture de R à l’usage des Sciences Sociales

Reilly, Huff et Stewart : le package SpatialPosition

Comme annoncé sur le blog du Groupe ElementR nous venons de déposer sur le CRAN le package SpatialPosition qui permet permet de calculer et de visualiser les résultats de modèles de positions : modèle de Reilly, modèle de Huff et modèle de Stewart. Ces modèles d’interaction spatiale permettent de saisir l’influence exercée par un lieu sur tous les autres (aire de marché d’un commerce, aire d’influence d’une ville, etc.). Pour plus d’information et de ressources sur ce type de modèles, vous pouvez vous référer à la vignette associée au package. Continuer la lecture de Reilly, Huff et Stewart : le package SpatialPosition

Création d’une carte interactive avec leaflet

En lisant cet article de Yann Guégan évoquant le monde selon Bernard Guetta je me suis dis: « Tiens, et si je faisais une petite carte interactive avec des cercles proportionnels en utilisant les mêmes données! ».
Le journaliste explique sa méthodologie et présente tous les outils qu’il a mobilisé dans un deuxième article. Les données (en tout cas une partie) sont également diffusées dans format libre. Cette démarche ouverte permet de reproduire les analyses, les figures etc. Bref c’est du bon boulot!

Cartographie interactive

Pour réaliser cette carte, avec R bien sur, j’ai choisi d’utiliser le package leaflet. Ce package, disponible sur github, est construit en utilisant le package htmlwidgets et s’appuie sur la librairie javascript leaflet. Continuer la lecture de Création d’une carte interactive avec leaflet

Visualiser des flux : les graphiques circulaires

On a récemment porté à mon attention cette visualisation de flux orientés plutôt réussie.

Comment lire ces graphiques :

L’idée de base de ce graphique est de montrer simultanément les tailles relatives des flux entre les régions. Les origines et les destinations des flux sont représentés par les segments du cercle […]. La taille des flux est indiquée par la largeur des liens à leurs extrémités. La direction du flux est encodé à la fois par la couleur du lien (celle de la région d’origine) et par l’espace entre le lien et la région de destination.Source

Continuer la lecture de Visualiser des flux : les graphiques circulaires

Installer devtools sur Ubuntu 14.04

Lorsque j’ai essayé d’installer devtools sur un pc sous Uubuntu 14.04 j’ai eu le message d’erreur suivant :

checking for curl-config... no
Cannot find curl-config
ERROR: configuration failed for package ‘RCurl’
* removing ‘/home/tg/R/i686-pc-linux-gnu-library/3.1/RCurl’
Warning in install.packages :
  installation of package ‘RCurl’ had non-zero exit status

Continuer la lecture de Installer devtools sur Ubuntu 14.04

Cartographie de flux avec R

La cartographie automatisée de flux n’est pas une chose facile à réaliser, et ce quelque soit le logiciel utilisé.
L’objectif de ce billet est de proposer un exemple de cartographie de flux avec R.

[MAJ] J’ai déplacé les données et ajouté le code sur GitHub. [/MAJ]

Les données utilisées sont des données de migration résidentielles issues de l’Insee et un fond de carte des départements français diffusé par l’IGN. Le tout est à télécharger ici sous forme de RData.

Cet exemple s’appuie sur le package igraph dédié à l’analyse et à la représentation de graphs. Les fonctionnalités de représentation de graphs orientés sont mobilisés pour représenter les migrations résidentielles entre les 6 départements les plus attractifs (hors Ile de France) entre 2003 et 2008. Continuer la lecture de Cartographie de flux avec R

Publier du code R sur WordPress sans plugin

[MAJ]

La présence des nombreux liens vers le site d’inside-r me chagrinais quand même un peu.
Après quelques tâtonnements j’ai finalement opté pour la solution suivantes :


<pre style="font-family: monospace;"><small><small>
monCode tres bien formaté et indenté
    parfois le signe "<-" ne passe pas
</small></small></pre>

Une fois le code pré-publié je le copie/colle dans R pour vérifier qu’il fonctionne toujours bien.

[MAJ] Continuer la lecture de Publier du code R sur WordPress sans plugin

Recherche Reproductible et création de packages

Dans le cadre des séances de formation du Groupe ElementR Hadrien Commenges et moi avons préparé des documents pédagogiques autour de la notion de recherche reproductible avec R.

Lors de cette trop courte séance j’ai présenté sous forme de tutoriel un module sur la recherche reproductible et la création de packages: Continuer la lecture de Recherche Reproductible et création de packages

R pour les géographes

[MAJ] Le manuel vient de sortir en format papier.
Présentation du livre sur le blog ElementR
Prem_couv_Respace_500x681
[MAJ]

R pour les géographes : Éléments d’analyse de données géographiques, d’analyse spatiale et de cartographie avec R.

Il s’agit d’un manuel réalisé par le groupe ElementR, groupe de huit auteur-e-s coordonné par Hadrien Commenges. Il est le fruit de sessions de formation au logiciel R organisées à l’UMR Géographie-cités durant l’année 2012. Continuer la lecture de R pour les géographes

Choisir et soigner l’affichage des résultats d’une fonction

Cette fonction affiche de façon simple les résultats sous forme de texte dans la console et permet l’export des résultats dans un objet.

FUN <- function(x){ 
  meanx <- mean (x)
  medianx <- median(x)
  sdx <- sd(x)
  cat("La moyenne est de", meanx,"\n")
  cat("La médiane est de", medianx,"\n")
  cat("L'écart-type est de",sdx)
  invisible(list(moyenne=meanx, 
                 mediane=medianx, 
                 et=sdx))
}

Continuer la lecture de Choisir et soigner l’affichage des résultats d’une fonction

Créer un classeur Excel à partir de plusieurs objets R

Pour ceux qui sont encore obligés de fournir des sorties Excel voici un lien vers un post proposant une fonction permettant d’exporter différents objets en tant que feuilles d’un classeur.
http://statmethods.wordpress.com/2014/06/19/quickly-export-multiple-r-objects-to-an-excel-workbook/

… une fonction très simple qui permet d’exporter un nombre lambda d’objets R vers un classeur Excel en un seul appel. Chaque objet doit apparaitre sur une feuille distincte portant le nom de l’objet…
…La méthode fonctionne pour les data frames, les matrices, les time series et les tables…

La fonction est basée sur le package xlsx.

Création d’une matrice de distances routières avec l’API de Google Maps

[MAJ] La fonction geocode du package ggmap fait la même chose, de l’importance de bien se renseigner sur ce qui existe déjà avant de coder… Cela m’aura quand même permis de m’initier aux API. [/MAJ]

[MAJ] Le code et les données sont maintenant disponible sur GitHub [/MAJ]

Si la mise en place de l’outil graphHopper vous semble trop fastidieuse vous avez la possibilité d’utiliser l’API de Google Maps. L’utilisation de cette API ne va pas sans quelques limitations.

A partir des mêmes données que celle utilisées ici voici un exemple de script R permettant la constitution d’une matrice de distances par interrogation de l’API de Google Maps : Continuer la lecture de Création d’une matrice de distances routières avec l’API de Google Maps

Installer le package rgdal sur ubuntu

[MAJ]Avec ubuntu 15.10 ce n’est plus la peine d’utiliser aptitude, le apt-get install fonctionne[/MAJ]

Le package rgdal permet l’utilisation dans R des librairies spatiales GDAL (Geospatial Data Abstraction Library) et PROJ.4 qui servent respectivement à gérer différents formats de données géographiques et les conversions de projections géographiques.

L’installation du package se fait sans problème sous Windows. En revanche sous ubuntu Continuer la lecture de Installer le package rgdal sur ubuntu

Cartographie et analyse spatiale avec R – Séminaire RUSS

Voici l’introduction, la présentation et les données utilisées lors de mon intervention au Séminaire « R à l’Usage des Sciences Sociales » co-organisé par l’Ined et l’Ehess le 22 mai 2014. Cette présentation a été réalisée en collaboration avec Nicolas Lambert (http://neocarto.hypotheses.org/). Continuer la lecture de Cartographie et analyse spatiale avec R – Séminaire RUSS

Création d’une matrice de distances routières avec des outils et des données libres (2/2)

2 – Interrogation de l’API et constitution de la matrice de distance avec R

Le programme R suivant construit la matrice de distance entre une table d’origines et une table de destination. Le format de ces tables doit comprendre un champ d’identifiant et deux champs contenant les longitudes et latitudes des points en WGS84. Continuer la lecture de Création d’une matrice de distances routières avec des outils et des données libres (2/2)

Création d’une matrice de distances routières avec des outils et des données libres (1/2)

Comment créer une matrice de distances (calculées en kilomètres ou en minutes) entre plusieurs points du globe?

Il existe plusieurs solutions commerciales et plus ou moins fermées pour construire ce genre de matrices (The Google Distance Matrix API, Bing Routes API ou MapQuest par exemple). Ces solutions présentent plusieurs inconvénients : limites d’extraction, limites d’utilisation, limite de diffusion…

La solution proposée ici n’utilise que des données et des outils libres :

  • Un réseau routier, issu d’OpenStreetMap (OSM).
  • Le logiciel Osmosis permettant de manipuler les données OSM.
  • L’application GraphHopper pour calculer les itinéraires.
  • R pour interroger l’API de GraphHopper et constituer la matrice de distance.

L’objectif est ici de calculer une matrice de distances entre une vingtaine de villes françaises, belges, allemandes luxembourgeoises et néerlandaises. Continuer la lecture de Création d’une matrice de distances routières avec des outils et des données libres (1/2)

Visualisation de données médiatiques et géographiques avec R

Dans le cadre des rencontres de statistiques appliqué du Service Méthodes Statistiques de l’Ined (SMS) j’ai, avec Marta Severo, fait une présentation portant sur la visualisation de données médiatiques et géographiques avec R.

Voici le résumé de la présentation :

La combinaison d’informations géographiques et d’informations médiatiques peut s’avérer particulièrement fructueuse pour l’analyse des évènements médiatiques internationaux et notamment pour l’étude de leur propagation spatio-temporelle.
L’objectif de cette communication est de présenter les caractéristiques de la donnée médiatique et de montrer les possibilités que le logiciel R offre pour le traitement et la visualisation de ce type de données.
Nous présenterons quelques exemples faisant appel à l’interactivité, à l’animation et à la cartographie à travers l’analyse de la couverture médiatique internationale du conflit de Wukan, un village du sud de la Chine, où après des mois de protestations contre l’accaparement illégal de terres les habitants ont obtenu des élections libres.

Et voici un lien vers la page web associée à la présentation. Cette page a été conçue avec le package knitr.

Une application web avec le package Shiny

Le package Shiny permet assez facilement et assez rapidement de construire des applications Web utilisant R comme moteur de calcul. Dans cet exemple (accessible ici : http://riate.shinyapps.io/matrixes/) il s’agit de construire une application qui transforme des données de flux ou de lien d’une forme tabulaire à une forme matricielle :

fijtomat

et d’une forme matricielle à une forme tabulaire :

mattofij Continuer la lecture de Une application web avec le package Shiny

hypotheses.org