dimanche 29 avril 2012

Licence ouverte

Les trucs que tu fais, quand t'as les données qu'il faut...
Une fois qu'on a les données qu'il faut, on fait un peu n'importe quoi avec.

Le problème avec la liberté c'est que les gens l'utilisent alors qu'on pensait juste leur refiler les restes.
En France, on a des régions, des départements, des arrondissements, des cantons et des communes. Beaucoup de communes. Genre, des tonnes. Plus de 36 000, même. Du coup, le pays possède un maillage assez fin de son territoire au niveau communal.

Jusqu'à pas très longtemps, sur Commons, le département était ce qu'on avait de mieux comme découpage pour les cartes. Impossible de descendre plus bas : j'ai longtemps cherché un moyen de produire des cartes communales avant de me résigner. Trop de boulot à faire à la main et les données existantes ne pouvaient pas être utilisées pour les projets Wikimedia. Oh, bien entendu, l'IGN avait ces données, mais il ne les filait pas comme ça (j'imagine qu'il n'en avait de toute façon pas le droit).

Et puis la vague de l'open data est arrivée dans le pays. La semaine dernière, à l'approche des élections présidentielles, je me suis souvenu que ça serait vachement cool d'avoir des cartes permettant d'afficher les résultats par commune. Alors, j'ai tripoté un peu mon Google sans trop rien en attendre, arrivant comme prévu sur la page « GEOFLA » de l'IGN. Sauf que là, je vois que le texte a changé. Désormais, un gros logo « Licence ouverte » est affiché, avec la mention suivante : « La réutilisation de GEOFLA® est gratuite pour tous les usages, y compris commerciaux, selon les termes de la "licence ouverte" version 1.0. ».

Woah.

Je te télécharge tout ça, tente de comprendre le format shapefile, finis par télécharger le logiciel Shp 2 KML, convertis les données dans un format KML que je peux comprendre, trafique le tout à grands coups de regex dans ta face. Quelques boucles Perl plus loin, j'ai généré une centaine de fichiers SVG, décrivant chacun la division d'un département en communes. J'uploade le tout sur Commons et tout le monde est content.

Une fois l'élection passée, il me suffit d'avoir les résultats par commune, de les combiner avec une carte de France et hop ! voilà l'image tout en haut de ce billet. L'open data, quand on a les données, c'est tout simple.

6 commentaires:

Barraki a dit…

Formidable. Comme d'habitude.

Elle est de toi la citation en italiques ?

NaSH a dit…

il me semble qu'openstreetmap a le tracé des communes depuis un moment maintenant non ?
car a partir des cartes du cadastre, il a été possible de les reconstituer.

http://wiki.openstreetmap.org/wiki/WikiProject_France/Fonds_de_cartes/Contours_de_Communes_au_format_vecteur

Bertrouf a dit…

Bonjour Poulpy,
Tu m'as donné une idée, que je suis bien incapable de mettre en oeuvre mais qui devrait être à ta portée : il s'agit de créer pour chaque commune un fichier semblable à celui-ci.

http://commons.wikimedia.org/wiki/File:Bouzincourt-position.svg

Voir un unique fichier mais paramétrable pour afficher sur l'article.

Est-ce que j'en fais trop ?

Poulpy a dit…

@Barraki : elle de moi. Totalement inventée. :D

@NaSH : effectivement, c'est prometteur, la résolution est plus fine. Malheureusement, c'est pour l'instant incomplet. Mais c'est à suivre.

@Bertrouf : c'est possible. Euh, un jour... Ça fait 36000 fichiers. :)

Hugo a dit…

Poulpy, J'ai cherché un tel .shp pendans des heures en 2011. OSM était incomplet et douteux. Tu as trouvé le graal (2012) pour les wikicartographe là ! Bourrichon et moi poussons l'atelier vers QGIS, mais si ton soft roule, parles en.
Amicalement, Yug des montagne.

Bourrichon a dit…

Magnifique carte. C'est drôle comme certains départements sont tout bleu ou tout rose.

Évidemment il faut s'y connaître en perl. Mais je plussoie ce que vient de dire Yug sur l'accessibilité de ce genre de script.