Projet de programmation Python Les indices de démocratie de chaque pays à travers le monde Baptiste Durand ESIEE EIG-2010 1 Table des matières Introduction ....................................................................................................... 3 Présentation de l’indice de démocratie .............................................................. 3 Détail des différentes parties ............................................................................. 4 Configuration minimale requise ......................................................................... 4 Fonctionnement du programme ........................................................................ 5 Exemples d’exécutions du programme .............................................................. 6 2 Introduction L'objectif du mini-projet est de recueillir, d'analyser et de présenter des données publiques et officielles dans un secteur d'intérêt général. Concrètement, il s'agit de fouiller dans une source de données située sur internet (donc en format HTML) ou au format CSV (Comma Separated Values), dans un fichier situé sur l'ordinateur et à mettre en place un histogramme et une carte commentée grâces aux données recueillies. Dans le cadre de l’unité EIG-2010, nous utiliserons le langage de programmation de haut-niveau Python. Présentation de l’indice de démocratie Je vous propose d'aborder ce que l'on appelle "l'indice de démocratie". Qu'estce que l'indice de démocratie ? L'indice de démocratie est un indice "officiel" crée en 2006 par le The Economist Group qui évalue les 167 principaux pays de notre Terre en fonction de plusieurs critères : le processus électoral et le pluralisme, les libertés civiles, le fonctionnement du gouvernement, la participation politique, la culture politique. Ce critère est évalué de 0 à 10, 0 correspondant au régime le moins démocratique et 10 au régime le plus démocratique. A titre d’exemple, la Corée du Nord est le régime le plus autoritaire avec une note de 1.08/10 et la Norvège est le régime le démocratique avec une note de 9.93/10. Les indices de démocratie de certains états tels que le Vatican, Monaco ou la Somalie, n'ont pas été calculés. Dans notre cas, nous utiliserons la dernière version calculée de l’indice de démocratie, celle qui date de 2014. Toutes les données que nous afficherons ont étés recueillies via le site internet : http://fr.wikipedia.org/wiki/Indice_de_d%C3%a9mocratie 3 Détail des différentes parties Le projet est divisé en plusieurs parties, elles-mêmes divisées en sous parties : D’une part, nous avons la partie des scripts : Le script main qui permet de lancer le programme Le script partieproxy qui paramètre le proxy qui va servir à se connecter à internet Le script partieliste qui retourne le fichier paysdem.csv sous forme de liste lisible par le programme. Le script partiecarte qui prend en paramètre le proxy et la liste obtenue à partir du fichier csv et qui affiche la carte commentée Le script partiegéoloc qui prend en paramètre le proxy et le pays concerné et qui retourne les coordonnés du pays sous forme de tableau à 2 cases. Le script partie2 qui permet de gérer les 4 scripts détaillées précédemment et qui gère donc l’affichage de la carte par partiecarte Le script partie1 qui permet de gérer tout ce qui se réfère à l’histogramme. D’autre part, nous avons la partie relative aux fichiers non-scripts : Le fichier paysdem.csv qui contient toutes les données que nous souhaitons afficher sur la carte et dans l’histogramme et dont les données ont étés obtenue via Wikipédia. Le fichier PDF que vous lisez en ce moment même … Configuration minimale requise Pour que le programme fonctionne correctement, il faut que l’ordinateur sur lequel vous exécutez votre programme possède les choses suivantes : Une connexion internet haut-débit Une version récente de Python Le module BaseMap Le module Pylab 4 Fonctionnement du programme Le programme se lance via le script main.py. Ce script a pour mission de faire démarrer le programme. Celui-ci importe le script partie1 et l’exécute. Le script partie1 sert à l’affichage de l’histogramme. Il va importer le script partieliste pour pouvoir lire le fichier csv paysdem.csv. Puis, il va stocker chaque élément dans une liste et afficher le nombre de pays en fonction de l’indice de démocratie correspondant. Le script partie2 va servir à afficher les données du fichier csv sur la carte. Le script partie2 va invoquer le script partiecarte qui va se contenter d’afficher la carte en prenant en compte deux paramètres : le proxy obtenu par le script partieproxy et la liste retournée par le script partie liste. Le script partiecarte va faire appel au script partiegéoloc pour obtenir les coordonnées GPS du pays concerné Les scripts de ce projet sont équipés d’un système élaboré de gestion des exceptions de manière à éviter tout « plantage » inopiné du programme. 5 Exemples d’exécutions du programme Voici quelques exemples d’exécutions du programme sous Windows 7 : Voici ci-dessous, le résultat du script partie1 qui retourne l’histogramme du nombre de pays concerné pour chaque indice de démocratie. On remarque que la majorité des pays ont un indice de démocratie supérieur à 5. Nous sommes donc dans un monde majoritairement démocratique. 6 Voici ci-dessous, le résultat du script partie2, qui retourne la carte des indices de démocratie en fonction des pays. Les pays les plus démocratiques sont marqués en bleu, ceux qui le sont un peu moins en vert, ceux qui le sont encore moins en jaune, et les plus autoritaires en rouge. On voit que les pays les plus démocratiques se situent en Amérique du Nord et en Europe. Les régimes les plus autoritaires se situent en Afrique du Nord et en Asie. 7