Archives par mot-clé : data

Ce qui a changé dans la liste des sujets préférés des médias français

Vous avez été nombreux à montrer votre intérêt pour le tableau de bord des obsessions, marottes et zones d’ombre des médias que j’ai publié début février. Je vais donc continuer de le compléter et de l’améliorer dès que j’aurais un peu de temps devant moi, et listé dans ce post les derniers changements.

Samedi 10 février

  • Une dizaine de médias supplémentaires sont désormais étudiés : Courrier international, L’Equipe, Les Echos, La Tribune, Challenges, Capital, Reporterre, L’imprévu, Bastamag, Contexte, StreetPress, The Conversation.
  • Dans la liste des entités, le classement actuel et son évolution par rapport à la période précédente est indiqué, à la manière du Top 50.
  • Le script qui récupère les titres et descriptions des articles publiés par chaque média (via leur flux RSS) passe désormais une fois par heure, et non plus trois fois par jour, pour ne rien rater sur les sites qui publient beaucoup de contenu comme 20 minutes.
  • L’adresse du flux RSS utilisé pour L’Express était erronée et a été corrigée.
  • La qualité du corpus utilisé pour l’analyse a été beaucoup améliorée : problèmes d’encodage résolus (Le Monde, Vice…), balises HTML mieux filtrées (Mashable…), suppression des retours chariots, retours à la ligne et tabulations.
  • Le corpus ne contient plus que les 150 premiers caractères de la description de chaque article publié, afin de ne pas défavoriser dans l’analyse les sites qui ne fournissent qu’une description très courte dans leur fil RSS, comme Le Point.
  • Trois médias ne peuvent être étudiés : Buzzfeed (contenus en anglais dans le fil RSS), Valeurs actuelles (fil RSS illisible), Télérama (pas de fil RSS disponible).

Comment je prépare le tableau de bord des sujets les plus traités par les sites d’actu

Capture d’écran d’un script Python

C’est sans doute le projet le plus ambitieux et le plus complexe que j’aie mené à bien depuis que j’ai lancé Dans mon labo il y a bientôt quatre ans. Il m’a fallu pas mal d’après-midi pluvieux et de jours fériés blafards pour terminer le tableau de bord qui liste les sujets les plus présents dans les sites d’actualité français.

Il est devenu possible grâce aux progrès que j’ai réalisés en Python, un langage de programmation prisé des datajournalistes. De mon côté, j’ai dû sérieusement m’y mettre courant 2017, notamment pour afficher en direct les résultats des élections législatives au sein de la carte interactive que j’ai préparée pour Contexte.

Pour explorer les flux XML mis à disposition par le ministère de l’Intérieur le soir des scrutins, j’ai trouvé en Python, avec sa syntaxe accessible et ses multiplies librairies disponibles, un partenaire idéal. (Mais il est aussi possible de faire ça très bien avec d’autres solutions, comme R.)

Et ces connaissances m’ont ouvert de nouveaux horizons, notamment ceux de la reconnaissance automatisée d’entités nommées. Un domaine qui, m’a-t-on expliqué, a beaucoup progressé grâce au patient travail de description et de classement réalisé par les contributeurs de Wikipedia.

J’ai d’abord travaillé, toujours pour Contexte, sur les thématiques les plus présentes dans le discours des députés pour enrichir le trombinoscope de l’Assemblée nationale que le site propose à ses abonnés. C’est alors que m’est venue l’idée de proposer une démarche comparable, mais avec les médias en ligne.

1. Scraper les flux RSS des sites d‘actu avec Python

J’ai listé, dans une Google Sheet, les sites que je souhaitais étudier, en renseignant pour chacun l’adresse de son flux RSS principal.

Mon script de scraping (dispo pou les curieux) commence par récupérer cette liste, et va chercher dans chaque flux le titre et la description (le chapô ou le début du texte) de chaque article. Il récupère aussi sa date de publication, et enregistre le tout dans un fichier Json dédié à chaque site (voir par exemple celui du Monde).

Tous les flux RSS n’étant pas construits de la même façon, il a fallu prendre en compte les différents cas de figure : ainsi, le résumé de l’article se trouve dans un élément qui peut être nommé « description », « summary », « content »…

2. Créer un corpus de textes et le faire analyser par TextRazor

La suite de ce script va concaténer ensemble les titres et résumés de chaque article publiés dans une période donnée (depuis sept jours, cette semaine ou ce mois) pour en faire un seul et même texte.

Ce corpus va ensuite être envoyé à TextRazor, via la librairie Python que met à disposition ce service d’analyse sémantique. Ce dernier est gratuit jusqu’à 500 requêtes par jour, un quota largement suffisant pour ce projet.

Parmi les services équivalents, TextRazor a un autre avantage : non seulement son outil d’extraction des entités nommées renvoie la liste des thématiques détectées au sein du corpus soumis, mais il fournit aussi pour chacune un score de relevance (« pertinence », que j’ai finalement traduit en « présence » dans mon tableau de bord).

Ainsi, s’il détecte les mots « GPA », « gestation pour autrui » ou « mère porteuse » dans un texte, Textrazor réunit ses expressions dans une seule thématique (en général le titre de la notice Wikipedia dédiée). Et donne à cette dernière une note, de 0 à 1, selon que l’entité lui semble plus ou moins pertinente dans le texte fourni.

C’est à la fois la force et la faiblesse de ma méthode : ce scoring me permet de générer les multiples classements, mais je n’ai pas « la main » sur son élaboration.

Malgré quelques mauvaises surprises, l’observation des résultats obtenus m’a toute fois rassuré : Le Parisien est en général le média où le thème « Paris » est le plus présent ; on retrouve souvent « Jean-Luc Mélenchon » bien classé dans les résultats de Politis ; Sputnik et RT France sont bien placés au classement pour le thème « Vladimir Poutine ».

4. Héberger les scripts sur un serveur chez PythonAnywhere

Cette partie-là du chantier serait une promenade de santé pour un développeur back-end même débutant. A un journaliste bidouilleur comme moi, elle a pris pas mal de temps et d’énergie.

Une fois le script Python décrit ci-dessus mis au point, je ne pouvais pas l’exécuter moi-même plusieurs fois par jour sur mon ordinateur afin de disposer de données toujours fraîches pour alimenter un éventuel tableau de bord.

Sur les conseils d’amis développeurs, j’ai regardé plusieurs offres d’hébergement comme Amazon Web Services ou Google Cloud Platform, mais la longueur des procédures d’installation et des tutoriels proposés m’a vite refroidi. Je me suis rabattus sur Python Anywhere. un service peu onéreux et qui s’est révélé mieux adapté à un noob comme moi.

Même avec cette solution, je suis passé par mal, de guides d’utilisation, de pages d’aide et de questions Stack Overflow avant d’arriver mes fins : faire tourner mon script de scraping plusieurs fois par jour.

4. Créer le tableau de bord en front à partir d’un fichier Json optimisé

Une fois toutes ces listes de thématiques récupérées et enregistrées dans le fichier Json de chaque média, un autre script Python, lui aussi hébergé sur PythonAnywhere, va préparer un fichier Json commun et de taille réduite.

Ce dernier sera récupéré, au moment où le tableau de bord publié Dans mon labo se charge, par votre navigateur.  Au final, c’est donc Chrome, Firefox ou Edge qui va construire l’infographie à l’intérieur de la page.

Je ne détaillerais pas sur ce travail de développement front-end, classique combinaison de HTML, de CSS et de Javascript, mais si vous avez des questions sur cette partie, je serai ravi d’y répondre !

A ce stade, la principale difficulté pour moi a été de s’assurer que le chargement des données puis la construction de l’infographie se fasse dans un délai raisonnable : lors des premières étapes, le tout prenait parfois une bonne dizaine de secondes, ce qui es rédhibitoire.

Pour chaque média, j’ai choisi de ne pas intégrer une thématique si son score était inférieur à un certain seuil (en ce moment, 0,4/1), et de n’afficher une thématique dans la liste principale que si elle était présente dans au moins quatre médias.

Il m’a fallu pas mal d’allers-retours entre scripts Python sur le serveur et code Javascript dans le navigateur pour réduire ce délai et obtenir une expérience suffisamment fluide, mais il  reste sans doute pas mal d’optimisation possible.

5. Préparer la suite avec des analyses hebdomadaires et mensuelles

Comme beaucoup l’ont fait remarquer dès la publication du tableau de bord, les résultats seront intéressants à observer dans le temps, au-delà de la photographie actuelle (les sept derniers jours). Mon script réalise déjà des analyses hebdomadaires et mensuelles, qui ne sont pas affichées mais que j’espère utiliser quand j’aurais davantage de recul.

Voilà ! Je suis en tout cas curieux de savoir vos remarques, critiques ou propositions d’amélioration dans les commentaires de ce post ou bien, pour les timides, dans un message privé.

Mis à jour le 2/2 à 10h15. Précision sur les seuils (point 4) et point 5 ajouté.

Obsessions, marottes et zones d’ombre : voici les sujets préférés de 60 sites d’info français

Dans une rédaction, la ligne éditoriale, c’est comme le dahu : tout le monde en parle, mais personne ne l’a jamais vue. Elle structure pourtant le travail quotidien des journalistes ; c’est en son nom qu’on va accepter ou refuser une idée de sujet ou d’angle. Et quand elle est absente ou bien trop floue, ce n’est souvent pas bon signe.

Pour tenter de représenter ces fameuses lignes, j’ai mis au point ce tableau de bord, qui montre les thématiques les plus présentes sur une soixantaine de sites d’actualité dans les sept derniers jours, le tout rafraîchi trois fois par jour.

Encore expérimentales, ces listes sont générées automatiquement, grâce à la reconnaissance d’entités nommées dans un corpus spécifique à chaque média. Cet agglomérat de texte est formé avec les informations disponibles au sein de son flux RSS principal – je reviens en détail sur la méthodologie utilisée dans un autre post.

Mis à jour le 10/2. La liste des changements est dispo dans ce post.

 

Bataille de bouffe ! Découvrez les ingrédients et recettes préférés des Français

Mettez deux Français ensemble, et il y a de bonnes chances qu’après quelques minutes, ils se mettent à parler de bouffe, qu’il s’agisse du dernier restaurant à la mode ou de cette recette exclusive de moelleux au chocolat qu’ils sortent du tiroir pour les grandes occasions.

Mais quels sont les aliments et les préparations préférés des Français ? Pour le savoir, j’ai « aspiré » les données d’un des sites de recettes les plus populaires, Marmiton, Vous pouvez découvrir les résultats en lançant des batailles d’ingrédients dans l’infographie ci-dessous.

Pour calculer le score d’un ingrédient, j’ai d’abord récupéré toutes les recettes qui le contiennent, grâce à un script en Python. Ensuite j’ai multiplié, pour chacune de ces dernières, le nombre d’avis d’internautes par la note moyenne obtenue. Et j’ai additionné le tout.

Je n’ai gardé que les 1 130 ingrédients qui apparaissent dans au moins 10 recettes, et opéré pas mal de regroupements pour obtenir des résultats plus pertinents (par exemple, « échine de porc », « côtes de porc » ou « escalope de porc » sont toutes regroupées dans l’ingrédient « porc »). La liste retenue contient finalement 871 entrées, de A comme « abricot » à Y comme « yaourt ».

Il m’a aussi fallu créer une cinquantaine de catégories (de « viandes » à « produits laitiers » en passant par « bonbons » ou « champignons ») afin de générer les classements. N’hésitez pas à me signaler des erreurs ou des bizarreries dans les commentaires ou en me contactant, afin que je les corrige.

Vous pouvez aussi consulter les données sur les ingrédients comme celles sur les catégories, pour les réutiliser si vous le souhaitez.

 

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 lpoaction 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.

Ces livres plus chers en version électronique que sur papier

Un eBook ouvert sur un iPhone (Jonas Tana/Flickr/CC-BY-NC-DR)
Un eBook ouvert sur un iPhone (Jonas Tana/Flickr/CC-BY-NC-DR)

Ça coûte combien, une série de 0 et de 1 ? C’est la vertigineuse question à laquelle se confrontent les éditeurs quand il faut fixer le prix de la version électronique d’un de leurs livres.

Et la réponse varie beaucoup d’un titre à l’autre, comme le montre un échantillon d’une cinquantaine de romans et essais, choisi parmi les plus vendus ou signés des auteurs les plus connus.

Pour chacun, j’ai relevé le prix de l’édition originale, celui de l’édition poche et celui des versions iBook d’Apple ou Kindle d’Amazon (données disponibles au format CSV).

A ma grande surprise, l’ebook est dans la plupart des cas plus cher que la version poche.

Le surcoût atteint même 10,90 € pour Boomerang, de Tatiana de Rosnay (éd. Héloïse d’Ormesson) – 17,99 € en version électronique, 7,10 € au Livre de poche (+150%).

De même, Apocalypse Bébé, de Virginie Despentes (éd. Grasset), vous coûtera 13,99 € si vous souhaitez le lire sur votre Kindle, contre 7,10 € seulement si vous voulez feuilleter les 380 pages de la version Livre de poche (+97%).

Ce décalage m’a étonné : d’un côté, un fichier numérique dont la reproduction ne coûte rien ; de l’autre, un objet physique fait de papier et d’encre et qu’il faut acheminer jusqu’au lecteur.

Sans compter que proposer un prix bas pour les ebooks les rend plus accessibles aux lecteurs les plus fauchés, et pourrait éviter de voir certains se tourner avec le piratage.

Si on compare le prix de l’édition originale et celui de l’ebook, le second est toujours moins élevé, mais la décote est très variable selon les titres : de -17% à -68% (-41% en moyenne).

Parmi les auteurs dont les ebooks sont vendus à prix cassés, on trouve paradoxalement Frédéric Beigbeder, un farouche opposant du livre électronique – c’est la fin « des librairies, des maisons d’édition, des suppléments littéraires dans les journaux et peut-être la fin de la critique littéraire », déclarait-il sur Europe 1 en 2011.

Son Oona & Salinger est vendu 7,10 € en poche mais seulement 6,49 € chez Apple et Amazon, soit une remise de 9%, la plus élevée de mon échantillon. Et pour Windows on the World, l’ebook est « seulement » 39 centimes plus cher que le poche (7,99 € au lieu de 7,60 €, soit +5%).

J’ai donc contacté les maisons d’édition concernées pour mieux comprendre comment ces prix étaient fixés.

La réponse de Fallois m’a beaucoup surpris : si La Vérité sur l’affaire Harry Québert, best-seller surprise de Joël Dicker, coûte 11,99 € en version électronique (contre 9,20 € en poche, soit +30%), c’est pour éviter qu’elle se vende trop bien, m’explique en substance Philippine Cruse :

« Nous voulons soutenir le livre papier. Si vous mettez un prix trop bas pour les ebooks, les gens ne vont acheter que du numérique et vous allez faire mourir les libraires. »

Si le sort des librairies est en jeu, pourquoi ne pas aller plus loin et retirer la version ebook de la vente ? Parce que l’époque est au compromis : « On est obligés de jongler, c’est une période un peu difficile », reconnaît-elle.

Chez Viviane Hamy, qui vend Coule la Seine de Fred Vargas à 9,99 € en ebook alors qu’il coûte 4,30 € en poche (+132%), Maylis Vauterin a bien voulu détailler la politique tarifaire pratiquée.

Quand le livre est une nouveauté, la décote sera de « 30% au minimum », mais le prix pourra même être descendu à 9,99 € dans le cadre d’une offre de lancement si « le potentiel d’un titre est particulièrement fort pour les lecteurs qui lisent en numérique ».

Pour les livres « de fond », le prix est « de 9,99 € pour la collection policière et 6,99 € pour la collection bis », hors périodes et offres de promotion.

Et c’est justement pour pouvoir proposer des promos que le prix de Coule la Seine et des autres romans de cet éditeur est maintenu plus cher que la version poche :

« Je ne connais pas d’autres mécanismes pour mettre en avant nos livres (dans la masse de livres disponibles, en étant un éditeur indépendant face à des groupes) que de participer à des opérations de baisse de prix.

En pratiquant un prix normal de 9,99 €, j’ai ainsi la possibilité de les proposer à 4,99 € en négociant de beaux focus sur notre production. »

Vauterin reconnaît qu’elle « tâtonne » pour « trouver un modèle éditorial » permettant de maintenir en ligne le délicat équilibre entre « best-sellers et découvertes de talents, forcément déficitaires au plan économique ».

Mais s’il est virtuel, un livre électronique engendre des coûts bien réels pour l’éditeur, ajoute-t-elle. Les revendeurs (Apple, Amazon…) gardent 40% du prix payé par l’acheteur. L’éditeur a choisi de verser des droits d’auteurs plus élevés que pour le papier. Et puis il faut prendre en compte « l’interface vers les plate-formes et la gestion des métadonnées, qui supposent de gros investissements ». Sans oublier la réalisation des fichiers epub eux-mêmes.

Elle se défend en tout cas de toute hostilité envers ces nouveaux supports :

« Le numérique est une part importante de la vie de notre catalogue. Nous avons investi afin de rendre disponible près de 80% de notre catalogue en numérique, y compris des ouvrages qui vendent de très petites quantités. »

Et pour vous, quel est le bon prix pour un livre électronique ? Le débat est ouvert dans les commentaires !

On n’a pas les mêmes valeurs : le mariage gay sur les sites de Fox News et MSNBC

L’actualité de ces dernières heures est particulièrement chargée, entre les attaques de l’Etat islamique, le référendum annoncé en Grèce et la décision de la Cour suprême américaine de légaliser le mariage homosexuel.

Dans ces conditions, pas simple de choisir le sujet de couverture d’un quotidien ou l’ordre des sujets affichés en page d’accueil d’un site d’information.

Mais la « hiérarchie de l’info » chère aux journalistes ne dépend pas qu’à des critères objectifs, loin de là. L’importance qu’une rédaction accorde à un sujet dépend aussi de sa vision du monde, de ses priorités éditoriales et de ses valeurs.

Je me suis amusé à comparer les pages d’accueil des sites des chaînes américaines MSNBC (classée pro-démocrate, « libérale » au sens américain, à gauche donc) et Fox News (pro-républicain, conservateur, à droite donc). Les captures d’écran ont été prises ce samedi matin.

Les pages d'accueil de Fox News et de MSNBC ce samedi matin.

Vu l’importance du sujet, je m’attendais à ce qu’il occupe à peu près la même place sur les deux sites, mais on voit que Fox News préfère mettre en avant d’autres actualités (une forme de déni ?), surtout en haut de page d’accueil. De façon plus attendue, les titres choisis par les deux médias donnent clairement la couleur.

Titres de MSNBC.

  • L’Amérique ouvre un nouveau chapitre de son histoire
  • Les mots de la Cour suprême dans sa décision
  • Des émeutes à la célébration
  • L’avis d’une sénatrice gay sur « cette étape capitale »
  • La plus belle semaine de tous les temps pour le camp progressiste

Titres de Fox News, en haut de page :

  • « Une cour de justice n’est pas le législateur », explique le juge John Roberts, qui avait soutenu Obamacare
  • Vidéo : le mariage pour tous a gagné
  • Edito : la cour s’attaque à la vérité du mariage et dresse la foi contre la loi

Titres de Fox News, beaucoup plus bas dans la page, affichés seulement après avoir « scrollé » suffisamment :

  • Mariage gay : pourquoi la Cour suprême a tort.
  • Pourquoi les décisions de la Cour suprême sur Obamacare, le mariage gay, le droit de propriété… vont aider les Républicains à la présidentielle de 2016
  • Cour suprême : les couples de même sexe peuvent se marier dans les 50 Etats
  • Comment le mariage gay va affecter l’Amérique
  • Les avertissements du juge Roberts après la victoire du mariage gay
  • Ben & Jerry sortent une crème glacée spéciale après la victoire du mariage gay.
  • Les réactions des célébrités à la décision de la Cour suprême
  • Mike Huckabee s’en prend au jugement de la Cour suprême
  • Pour Ric Grenell, la décision sur mariage gay est une grande victoire pour les conservateurs.
  • Quel impact aura la décisions sur la course à la Maison-Blanche
  • Lea DeLaria sur l’impact de la décision de la Cour suprême