Extraction des données d'adjacence des communes

Salut,

Je viens du monde Wikipedia/Wikidata.

Je sais que depuis peu, les limites intercommunales françaises sont complètes dans OSM. Félicitations !

Est-il possible sur cette base d’extraire une liste des adjacences inter-communales ? Genre, un tableau CSV 2 colonnes, “Code INSEE, Code INSEE”, pour toutes les communes qui sont adjacentes ?

Si c’est possible, et que quelqu’un est assez gentil pour me le faire, je me charge de demander l’import de ces données dans Wikidata (propriété P47).

Merci d’avance,

LBE (Luc)

Oui, c’est possible de sortir ça, je l’ai d’ailleurs déjà dans la base qui me sert à sortir les limites administratives simplifiées.

Pas contre, ces infos seront à remettre à jour régulièrement car ces infos évoluent dans le temps, les limites administratives n’étant pas figées.

J’ai exporté ça vite fait ici: http://osm13.openstreetmap.fr/~cquest/openfla/export/communes-adjacentes-20140306.txt

Une ligne = un arc adjacent, donc il faut l’intégrer 2 fois en inversant les codes INSEE, c’est à dire que “{01001,01028}” indique que les communes 01001 et 01028 sont adjacentes, mais il n’y aura pas de “{01028,01001}” dans ce fichier.

Super, merci. Ça a été même plus rapide que je ne l’espérais.

Je mets ça dans les mains d’un dresseur de bot Wikidata pour import. OSM sera indiqué comme source, avec la date.

LBE (Luc)

… et pour la mise à jour, le bot reviendra demander Christian sur le forum, je suppose …

Je peux ajouter cet export automatiquement lorsque je regénère semi-automatiquement les exports des limites de communes pour data.gouv.fr car s’en est dérivé (d’où la rapidité pour la mise à disposition de ce fichier).

Une petite question sur les lignes avec une seule commune :

J’imagine qu’il s’agit des arcs donnant sur la mer ou les pays limitrophes.
Dans ce cas pourtant, on est en plein milieu du territoire.
En y regardant de plus près, il doit s’agir de l’arc qui donne sur le cours d’eau à l’ouest. Le cours d’eau ne ferait donc partie d’aucune commune ?

Le cours d’eau est un estuaire (La Rance)… et il peut effectivement ne pas faire partie d’une commune.

Ce sont des cas particuliers parfois difficile à démêler. Notre source est le cadastre, et les surfaces occupée par l’eau n’y sont pas toujours bien prises en compte vu qu’on n’y prélève pas d’impôt (but du cadastre) :wink:

Sur géoportail, cette partie de l’estuaire est en effet partagée entre les communes: http://bit.ly/1n6nh0e

Merci pour ces précisions, et pour le fichier qui pourrait m’être bien utile.
Je cherche en effet un algorithme qui me permettrait de déterminer si un groupe de communes forme un seul bloc.
Tu n’aurais pas cela en magasin, à tout hasard ?

Avec une requête postGIS ou spacialite tu fais ça facilement.

Regroupement des polygones des communes (ST_UnaryUnion) et ensuite on compte combien il y a de “ring” (ST_NRings).

On pourrait en profiter pour importer la propriété “relation OpenStreetMap” (Property:P402).

Bonjour Christian,

Existe-t-il une mise à jour du fichier d’adjacence pour 2016 ?

PY

Non, mais je peusx mettre ça dans la tout-doux liste :wink:

Volontiers. :sunglasses:

Voilà, j’ai regénéré la liste des adjacences depuis les données OSM actuelle (non vérifiées):

http://osm13.openstreetmap.fr/~cquest/openfla/communes_adjacentes.csv

C’est un csv qui contient:

  • le code INSEE de la commune
  • son nom
  • le nombre de communes voisines
  • la liste des codes INSEE des communes voisines (séparé par | )
  • la liste des noms des communes voisines
  • la liste des caps en ° des différentes communes

Les communes voisines sont triés par cap donc nord en premier, puis est, puis sud, puis ouest…

Merci ! :smiley: