Archives par mot-clé : cartes

Comment j’ai réalisé les cartes de France de la VO et de la VF

Comme souvent, le travail que j’ai réalisé pour ma petite enquête sur la France de la VO et celle de la VF met en jeu toute une série d’outils que j’ai découvert au fil des ans, qu’il s’agisse de scraping, de jointures de tables ou de représentation par anamorphoses. L’ensemble des données dont je me suis servi est disponible dans une Google Sheet.

Je vais en décrire les différentes étapes, ce qui peut être utile si vous souhaitez vous lancer dans un chantier comparable. N’hésitez pas à mettre votre grain de sel dans les commentaires.

1. Récupérer la liste des séances avec un scraping en deux étapes avec Outwit Hub

Pour commencer, il fallu que je me constitue une base contenant l’ensemble des salles de cinéma de France. Par chance, le site Cinefil propose des pages listant tous les cinés d’un département (par exemple, ceux situés dans l’Ain).

J’ai d’abord généré automatiquement une URL pour chaque département sur cinefil.com dans Google Sheet. J’ai ouvert cette première liste dans Outwit Hub, un logiciel de scraping qui m’a permis de rassembler une liste de 1 409 salles. Pour chacune, j’ai aussi récupéré l’URL de sa page sur cinefil.com.

Sur ces 1 409 URL, j’ai fait passer un second scraper, afin de récupérer la liste des films diffusés dans chaque salle sur une journée, avec les horaires des séances et la version diffusée (VF ou VO). J’ai obtenu ainsi une liste de 14 423 films et de 20 182 séances.

2. Déterminer la langue de tournage dans chaque film avec OMDB

Après quelques heures de travail, je me suis aperçu d’une chose toute bête mais qui m’avait échappé : sur Cinefil, les séances des films en langue française sont indiquées « en VF », ce qui ne permet pas de les différencier automatiquement des films en langue étrangère diffusés en VF…

Il a donc fallu que j’établisse une liste des 982 films différents diffusés sur toute la France ce jour-là (le 28 avril), et que je trouve un moyen de déterminer, pour chacun d’entre eux, s’il s’agit à l’origine d’un film tourné en langue française ou en langue étrangère.

L’API Omdb m’a permis de récupérer cette information dans un bon nombre de cas, par l’intermédiaire de Cloud Ignite, un module complémentaire de Google Sheet particulièrement pratique.

Pour le reste, j’ai réalisé des croisements – par exemple, un film qui n’est diffusé qu’en VO sur toute la France ne peut être qu’un film en langue étrangère – et des déductions – par exemple, une coproduction France/Suisse/Belgique a de bonnes chances d’être tournée en français.

Ce tri s’est révélé fastidieux et le résultat n’est pas garanti sans erreurs, mais j’ai estimé sa fiabilité suffisante pour continuer à avancer, en mettant de côté tous les films en langue française.

3. Géolocaliser chaque salle de cinéma avec ezGecode

J’avais déjà récupéré l’adresse et le code postal de chaque cinéma sur sa page Cinefil. Pour en déduire sa latitude et sa longitude, j’ai utilisé un autre module complémentaire de Google Sheet, ezGeocode.

La grande majorité des salles a ainsi été géolocalisée automatiquement et avec une très bonne fiabilité, et j’ai réussi à placer le reste grâce à des recherches manuelles dans Google Maps.

 4. Déterminer le code commune pour chaque salle de cinéma

Afin de « marier » la base que je me suis ainsi constituée avec les données démographiques fournies par l’Insee ou les résultats électoraux disponibles sur le site du ministère de l’Intérieur, il me fallait déterminer le code Insee de la commune où se trouve chacun des cinémas de ma liste.

J’ai pu le faire grâce à une table de correspondances et à la base officielle des codes postaux, toutes deux disponibles sur Data.gouv.fr. Une série de recherches verticales plus tard, j’avais pour chaque salle de cinéma des informations comme la population de la ville, le taux de pauvreté, le vote Macron…

Des tableaux croisés dynamiques m’ont ensuite permis de consolider les résultats pour chacune des 278 localités françaises pourvues d’au moins une salle de cinéma (avec au moins une séance programmée ce jour-là), puis pour chaque département.

5. Réaliser les deux cartes interactives avec Carto

J’ai ensuite préparé deux séries de données, l’une avec toutes les salles où la part de la VO est majoritaire (#teamvo), et l’autre avec les salles plutôt VF (#teamvf).

J’ai créé deux cartes basées sur ces jeux dans Carto, et j’ai ajouté dans chacune d’elle un calque supplémentaire, avec les contours de chaque département et une couleur en fonction de la part de la VO ou de la VF à cette échelle.

J’ai passé pas mal de temps à chercher des réglages satisfaisants pour la taille des cercles, les nuances de couleurs ou encore la répartition des départements en cinq catégories (choix des intervalles).

6. Réaliser les cartes anamorphosées avec Qgis et Scapetoad

J’avais déjà utilisé les anamorphoses (cartograms en anglais) pour une série de cartes du monde tel que le voient les médias français qui avait tapé dans l’œil de pas mal d’observateurs. J’avais envie de commencer mon article avec ce type de visiuels, que je trouve facile à appréhender même pour des lecteurs peu friands d’infographies.

J’ai récupéré un tracé des départements français au format shapefile sur OpenStreetMap.

J’ai ouvert ce fichier dans l’éditeur de cartes Qgis afin d’associer à chaque département le nombre de séances en VO et en VF pour un million d’habitants.

C’est sur la base de ces deux données que j’ai réalisé les déformations de la carte de France dans ScapeToad, un petit utilitaire dédié à la création d’anamorphoses.

7. Créer une série de graphiques dans Datawrapper

Pour terminer, j’ai repris une dernière fois mes données pour isoler une série de chiffres de synthèse afin de créer les graphiques de synthèses qui figurent à la fin de l’article, en reprenant les codes couleur.

La France de la VO et celle de la VF : les cartes d’une fracture française

La France de la VO
La France de la VF

Ça fait partie de ces combats qui divisent les Français en deux camps irréconciliables. Comme la guerre sans merci du « pain au chocolat » et de la « chocolatine », ou le conflit séculaire entre la tartine au beurre salé et celle au beurre doux.

De même, il y a ceux qui ne jurent que par la version originale sous-titrée (VO) – quitte à passer son temps à lire les sous-titres plutôt qu’à profiter de l’action et des dialogues – et ceux qui ne peuvent pas vivre sans la version française (VF) – quitte à subir des traductions et des doublages pas toujours parfaits.

Histoire de frustrer un peu tout le monde, les cinémas ne proposent pas forcément les deux versions. Sur les deux anamorphoses en haut de cet article, plus un département est gros et plus ses habitants se voient proposer de séances en VO (à gauche, en rouge) ou de la VF (à droite, en vert).

Sur une journée, 20 182 séances de cinéma dans 1 400 salles

Pour les réaliser, j’ai récupéré, grâce à un scraper, l’intégralité des séances disponibles sur un site spécialisé pour la journée du 28 avril 2017. Soit plus de 20 182 séances, dans plus de 1 400 cinémas de France et de Navarre, projetant un total de 981 films différents.

Parmi ces derniers, j’en ai identifié 549 en langue étrangère (non sans mal, comme je l’explique dans un autre post sur site, où je reviens sur la méthode utilisée) pour un total de 14 223 séances, dont 2 964 en VO.

Dans certaines régions, la VO est réservée aux petites salles de centre-ville ou aux cinémas art et essai. Mais certains réseaux de multiplexes programment aussi un nombre important de séances en VO, comme UGC.

Si on passe à l’échelon des villes, c’est bien sûr à Paris que sont proposées le plus de séances en VO. Mais la banlieue et la province se défendent, avec Montreuil, Biarritz et Hérouville-Saint-Clair en tête devant la capitale si on prend compte la part totale des séances en VO.

A l’inverse, il y a des coins de France où on vous recommande pas de déménager si vous êtes #teamvo. Dans cinq départements, aucune séance en VO n’était proposée dans la journée :

  • l’Ariège
  • la Creuse
  • la Haute-Saône
  • l’Indre
  • l’Orne

Les villes avec VO et les villes avec VF

Mais pourquoi les cinémas d’une ville proposent-ils de la VO alors que ceux de la ville d’à côté se contentent de la VF ? Le goût pour la VO est lié à la richesse des habitants, à leur niveau d’éducation, où bien à leur choix politique ?

Sur les 1 133 localités étudiées, plus de 65% ne proposaient aucune séance en VO dans leurs salles de cinéma. Pour explorer mes données, j’ai donc réparti la liste en deux deux camps : les villes avec VO et les villes sans VO.


J’ai ensuite associé mes résultats à une série de statistiques de l’Insee, à commencer par la population (en 2014). Sans surprise, ce sont dans les localités les plus peuplées qu’on a le plus de chances se trouver des séances en VO.

Ça semble logique : comme la majorité des Français préfère la VF, proposer de la VO n’est commercialement intéressant que si la salle se trouve dans une zone suffisamment peuplée pour qu’on y trouve un nombre suffisant d’amateurs de versions sous-titrées.

Dans les deux camps, le niveau de vie médian est proche. On peut faire l’hypothèse que la VO n’est pas « un truc de riches »…

… ce que semble confirmer la comparaison du taux de pauvreté médian des deux séries de villes.

En revanche, si on s’intéresse à la part de la population ayant suivi des études supérieures, la différence est nette.

Je vois au moins une causalité possible à cette corrélation : plus on étudie, plus on est à l’aise avec la lecture, et moins on est gêné quand on doit passer du temps à lire les dialogues en bas de l’écran. Ce qui pourrait inciter les gérants de salle de la localité concernée à privilégier les copies en VO.

J’ai aussi croisé mes données avec les résultats du premier tour de la présidentielle 2017. Les villes sans VO ont tendance à voter davantage pour Le Pen et moins pour Macron et Mélenchon que les autres. Si la présidentielle ne s’était jouée que dans les villes avec VO, Mélenchon aurait été qualifié pour le second tour.


Voilà ! Evidemment, ce travail est très parcellaire, et la méthode que j’ai utilisée sûrement contestable. Je ne suis pas spécialiste de l’étude des pratiques culturelles, et je ne sais pas si cette grande fracture française a fait l’objet d’enquêtes plus poussées. [ajout le 27/7 à 17h20 : Vodkaster a fait un point assez complet sur le sujet en 2016]

Je serais en tout cas ravi d’en savoir plus, donc n’hésitez pas à descendre donner votre avis un peu plus bas dans les commentaires, et à aller explorer ces données, qui sont disponibles dans une Google Sheet.

Corrigé le 21/7 à 10h20. Inversion des barres dans les graphique niveaux de vie et part des diplômés du supérieur.

Mis à jour le 21/7 à 11h45. Ajout du graphique consacré aux réseaux de multiplexes.

Corrigé le 1/10 à 21h10. Inversion des barres dans le graphique population.

Comment j’ai réalisé les cartes du monde selon les médias français

C’est sans doute l’expérience publiée sur ce site qui m’a donné le plus de fil à retordre. Il a fallu passer par de nombreuses et fastidieuses étapes pour arriver à la publication de la série de cartes du monde tel que le voient les médias français Dans mon labo.

Mais je suis content du rendu un peu arty de ces anamorphoses – j’ai emprunté l’idée et une partie de la méthode à Altermondes, qui en avait réalisé une à l’occasion de sa campagne de crowdfunding.

1. Scraper les résultats de recherche Google en Python

C’était la première fois que je réalisais un travail d’extraction automatique de données en concevant un script dans un langage de programmation plutôt qu’en utilisant un logiciel disposant d’une interface graphique, comme Outwit Hub.

Je me suis servi de Scrapy, un outil qui m’a beaucoup facilité la tâche, mais que je n’ai pas réussi à installer sur mon Mac (la faute à El Capitan, semble-t-il) : il a fallu ressortir un portable sous Linux pour parvenir à le lancer.

La mise au point du script m’a pris pas mal de temps, mais une fois que j’ai compris la logique, j’ai avancé relativement vite : il suffisait en effet de repérer l’endroit de la page des résultats de recherche où figure la mention « Environ x résultats ».

Le plus compliqué à été de composer avec les sécurités qui se déclenchent sur les serveurs de Google quand on le sollicite trop : même en ralentissant beaucoup le rythme du robot passant sur ces pages, je finissais toujours par voir mon adresse IP bloquée.

2. Analyser les résultats dans Google Sheets

C’est en commençant à trier et à filtrer les résultats obtenus que je me suis aperçu qu’ils n’étaient pas toujours fiables : pour certains pays, les résultats trouvés dans Google Actualités (tous médias confondus) étaient en effet ajoutés au résultats trouvés sur un média particulier…

J’ai alors tenté ma chance sur Bing, mais ce dernier ne permet pas d’effectuer une recherche combinant plusieurs termes (avec l’opérateur OR) en ciblant un nom de domaine particulier.

De retour sur Google, j’ai fini par obtenir des données cohérentes en limitant la recherche aux pages publiées lors de l’année écoulée.

Il a fallu aussi traiter quelques cas particuliers – par exemple, le mot « Canada » apparaît sur toutes les pages du Huffington Post et de Buzzfeed, ces deux sites proposant un accès vers leur édition canadienne.

Il reste sans doute de petites aberrations de ce genre dans les données utilisées pour faire les cartes, mais j’ai considéré qu’elles n’étaient pas préjudiciables, vu la taille finale des cartes et leur niveau important de déformation.

3. Ajouter les résultats obtenus à une carte du monde grâce à QGIS

Le logiciel de cartographie avancé QGIS m’a permis d’ouvrir un shapefile (fichier de contours) trouvé sur ThematicMapping et de lui associer mes propres données via des recherches verticales dans la table.

Pour que ça marche, il faut une clé commune aux deux fichiers : en l’occurence, le code ISO à trois chiffres, que j’avais pris soin d’utiliser pour chaque pays étudié – je l’ajoute désormais systématiquement à toutes mes feuilles de calcul quand elles sont basées sur des pays, une précaution qui se révèle souvent utile.

4. Réaliser les anamorphoses avec ScapeToad

Disponible sur tous les OS via Java, ScapeToad est un petit logiciel plutôt bien fichu qui va réaliser la déformation du fichier shapefile en tenant compte, pour chaque pays, d’une valeur numérique disponible dans la table associée au fichier de contours.

Le résultat peut être enregistré au format d’image vectoriel SVG, ce qui permet de l’utiliser ensuite à n’importe quelle taille.

Attention : pour une carte du monde, les temps de calcul et de sauvegarde sont importants (surtout quand il faut recommencer la manipulation vingt fois pour vingt médias différents…).

5. Améliorer le résultat dans Adobe Illustrator

Le fichier SVG obtenu peut être facilement ouvert et modifié dans Illustrator, ce qui m’a permis de changer la couleur et la transparence des pays, et de créer une version PNG utilisée pour le partage Facebook.

Une fois les vingt cartes obtenues, j’ai créé la petite infographie permettant de basculer d’un média à l’autre en HTML, CSS et JQuery. Enfin, j’ai utilisé Datawrapper pour réaliser les deux graphiques également présents dans l’article.

Voici comment les médias français voient le monde

Les médias nous donnent-ils une vision déformée du monde qui nous entoure ? La question est vieille comme Théophraste Renaudot, mais j’ai tenté d’y apporter une réponse moderne avec la série de cartes « anamorphosées » publiée ci-dessous – une idée que j’ai piquée à mes petits camarades d’Altermondes.

Elles ont été réalisées en basant la déformation de chaque pays sur le nombre de résultats trouvés par Google quand on le cherche sur le site de l’un des vingt médias étudiés – je reviens plus en détail sur la méthode utilisée (et ses limites) dans un autre post.

Avec l’avènement des réseaux sociaux, devenus pour beaucoup d’entre nous le principal point d’accès à l’information, ces cartes vont-elles se déformer davantage ?

En filtrant selon leur popularité les publications venues de nos amis et des pages auxquelles nous nous sommes abonnés , Facebook est en effet accusé de créer une « bulle » autour de ses utilisateurs, ne les exposant plus qu’à des informations qui les touchent ou les font réagir.

Et comme leur trafic dépend de plus en plus de cette plateforme, les médias sont tentés de « publier pour Facebook », laissant de côté l’actualité des pays trop lointains. Un phénomène qu’on peut observer sur les cartes de Buzzfeed France et du Huffington Post, où les pays du Sud occupent la portion congrue.

Mais ces biais ne sont pas nouveaux, et ils dépendent aussi de la ligne éditoriale des journaux concernés :

  • L’Amérique du Sud et l’Afrique sont nettement enflées sur la carte du Monde diplomatique – logique vu les positions tiers-mondistes de ce mensuel.
  • l’Europe explose sur celle de Contexte – normal, le site suit de près l’actualité législative de l’UE.
  • les Etats-Unis sont bien plus gros que la moyenne sur celle de Slate.fr – pas étonnant, une bonne partie des articles sont des traductions de textes publiés dans la version américaine.
  • Les sites qui reprennent beaucoup l’AFP, par exemple Libération et Le Figaro, ont des cartes assez proches –une part importante des résultats décomptés se trouvent dans les dépêches de cette agence et reprises, sous différentes formes, sur ces sites.

Ces spécificités se retrouvent si on s’intéresse aux pays les plus cités, média par média.

On retrouve bien la loi du « mort-kilomètre », qui veut qu’une tempête de neige à Londres pourra occuper les chaînes infos toute la journée, alors qu’un tsunami en Indonésie peut faire des centaines de victimes sans qu’on chamboule le menu des journaux télévisés.

Mais on peut aussi prendre le problème dans l’autre sens, et s’intéresser aux médias qui s’intéressent plus (ou moins) que la moyenne à un pays donné.

N’hésitez pas à explorer vous-mêmes les données que j’ai récoltées,  et à raconter vos trouvailles ou à signaler des problèmes en me contactant ou en laissant commentaire.

Mis à jour le 26/1 à 10h35. Précision ajoutée concernant les médias reprenant beaucoup l’AFP, après un échange avec @quentingirard sur Twitter.

Airbnb : la carte des prix de location à Paris (et ce qu’on y apprend)

Ça fait un petit moment que j’avais envie de me coltiner aux données du service de location de logements entre particuliers Airbnb, après avoir vu la série de cartes réalisées par Tom Slee dans différentes villes du monde.

Et voilà que le site du Temps publie une enquête sur les loueurs d’Airbnb à Genève, en montrant qu’une part importante des offres publiées proposent des appartements qui ne sont pas ou plus habités à l’année.

Lire l’article

Les prix des locations Airbnb à Paris

Plus la couleur d’un appartement est foncée, plus son tarif est élevé. Pour voir des exemples de prix pratiqués, zoomez en double-cliquant, approchez la souris sur un des cercles ou tapez-le.

Autrefois modèle de « l’économie du partage », Airbnb est ainsi accusé de « siphonner » le marché locatif, les propriétaires y multipliant les locations courte durée plutôt que de choisir un occupant pérenne.

Un scraper pour récupérer les données

Pour mener leur enquête, les journalistes ont récupéré les données au moyen d’un scraper, une sorte de robot qui va visiter une à une les pages du site pour y récupérer des informations repérées au préalable. dans le code source.

Avec quelques manipulations simples sur les données ainsi récupérées, ils ont pu repérer de gros loueurs – telle Jasmina, qui gère 120 biens sur Airbnb – puis les faire témoigner.

Jean Abbiateci, co-auteur de cette enquête avec Julie Conti, raconte cette démarche pas à pas dans le blog Data Le Temps et a eu la bonne idée de mettre à disposition le script mis au point pour Outwit Hub, le logiciel qui a servi au scraping, que j’utilise aussi.

J’ai ainsi pu récupérer un échantillon de 2 000 offres parisiennes, proposant uniquement la location d’un logement entier (et pas d’une chambre privée ou une chambre partagée). Ça m’a servi à dresser la carte publiée en haut de cet article.

J’ai veillé à répartir les annonces choisies pour couvrir un maximum de terrain et obtenir une carte harmonieuse – par exemple, je n’ai gardé que 27 points dans le IIIe arrondissement, alors que c’est celui où les offres sont les plus nombreuses (3,2 par hectare).

Si on en tient pas compte de ce critère, la répartition des offres dans la capitale est en effet très inégale, comme le montre cette carte de chaleur (heat map).  

Carte de chaleur des annonces Airbnb à Paris. Plus la couleur d'une rue est vive, plus il y a d'annonces dans le quartier.
Carte de chaleur des annonces Airbnb à Paris. Plus la couleur d’une rue est vive, plus il y a d’annonces dans le quartier.

« Au final, ta carte va être la même que celle du marché de l’immobilier à Paris », m’a prévenu un confrère qui travaille dans un newsmagazine bien connu pour ses marronniers sur le sujet.

Sa remarque est vraie, mais pas entièrement : un arrondissement peut être plus cher sur Airbnb (c’est le cas du VIIIe et du VIe) que dans une agence traditionnelle, ou au contraire moins cher (le XIXe et le XVIIInotamment).

Et les gros poissons, alors ? Je ne donnerai pas leur profil, histoire de ne pas faciliter le travail du fisc ou du service dédié de la mairie de Paris, mais j’ai repéré des utilisateurs qui ont plusieurs dizaines d’annonces sur le site – des loueurs qui ne ressemblent donc pas beaucoup à ceux en photo sur la page d’accueil, mais plus à des professionnels ayant trouvé un bon filon.

Le phénomène semble assez circonscrit cependant : en cherchant parmi plus de 2 500 annonces, je n’ai trouvé que  9 inscrits avec plus de cinq annonces.

Mais il est possible que les professionnels d’Airbnb se créent plusieurs profils pour gérer leur pool d’annonces et dans ce cas, ils ne peuvent être détectés par cette méthode.

Bonus pour ceux qui ont lu jusqu’ici. Afin d’avoir une idée des expressions les plus utilisés pour convaincre les touristes, voilà un nuage de mots créés avec les titres des annonces de l’échantillon.

worldle
Les mots les plus utilisés dans les titres des annonces d’Airbnb à Paris.