Excel et autres feuilles de calcul sont omniprésentes en entreprise car elles vous permettent de créer des graphiques simples. Si vous souhaitez faire passer vos rapports et présentations au niveau supérieur, vous pouvez envisager d'apprendre Python pour créer des visualisations puissantes qui vous aideront à vous démarquer de la foule.
Configuration initiale
Création de la boîte à outils Python
Pour créer des tracés en Python, vous devrez configurer un environnement avec les bons packages. Ceux-ci incluent :
Même si ce ne sont pas des bibliothèques, IPython et Jupyter vous facilitera grandement la vie en manipulant des données avec Python. IPython améliore Python interactif, tandis que les notebooks Jupyter facilitent le suivi de votre travail et son partage avec d'autres.
Il est préférable d'utiliser un outil capable de gérer votre environnement Python pour installer ces outils. Mon outil préféré ces jours-ci est Pixi. Vous pouvez installer Pixi depuis les instructions sur le site Pixi pour votre système basé sur un terminal, notamment macOS, Linux et PowerShell sous Windows.
Une fois que vous avez installé Pixi, vous pouvez installer l'environnement. Parce que vous les voudrez probablement à portée de main, vous pouvez les installer dans l'environnement global :
pixi global install --environment graphics --expose jupyter --expose ipython jupyter numpy pandas seaborn matplotlib ipython
Cela installera Jupyter, IPython, NumPy, Seaborn et Matplotlib. Puisque Matplotlib est une dépendance pour Seaborn, il aurait probablement été installé de toute façon, mais nous voulons nous assurer qu'il est disponible, puisque nous enverrons certaines commandes directement à Matplotlib. Le --expose L'option indique à Pixi de rendre l'exécutable d'IPython disponible pour Jupyter.
Bases de la programmation Python
Défi-questionnaire
Vous pensez connaître vos boucles grâce à vos listes ? Mettez vos connaissances Python à l'épreuve.
SyntaxeTypes de donnéesFonctionsBouclesLes bases
Parmi les propositions suivantes, laquelle est la bonne façon d'imprimer « Hello, World ! » en Python 3 ?
Correct! En Python 3, print est une fonction, elle nécessite donc des parenthèses. C'est en fait l'une des principales différences par rapport à Python 2, où print était une instruction et n'en avait pas besoin.
Pas tout à fait. La bonne réponse est print('Hello, World!'). Python 3 traite print comme une fonction, nécessitant des parenthèses, contrairement à Python 2, où vous pouvez écrire print sans elles.
Quel type de données le type d'expression (3.14) renvoie-t-il en Python ?
Correct! Python utilise le type float pour représenter les nombres décimaux. Contrairement à d'autres langages, Python n'a pas de type « double » distinct : les flotteurs en Python sont en fait en double précision par défaut.
Pas tout à fait. La réponse est flottante. Python utilise float pour représenter les nombres décimaux, et bien qu'il soit en double précision sous le capot, il n'y a pas de type « double » distinct en Python comme vous le trouverez en Java ou C++.
Quel symbole est utilisé pour écrire un commentaire sur une seule ligne en Python ?
Correct! Le symbole dièse (#) marque un commentaire sur une seule ligne en Python. Tout ce qui est écrit après sur cette ligne est ignoré par l'interprète, ce qui le rend parfait pour les notes et les explications dans votre code.
Pas tout à fait. Python utilise le symbole # pour les commentaires sur une seule ligne. Le style // est utilisé dans des langages comme JavaScript et C++, tandis que — est courant dans SQL et Lua.
Laquelle des structures de données Python suivantes est immuable ?
Correct! Les tuples sont immuables, ce qui signifie que leur contenu ne peut pas être modifié après leur création. Cela les rend utiles pour stocker des données qui ne doivent pas être modifiées et peuvent même être utilisées comme clés de dictionnaire, contrairement aux listes.
Pas tout à fait. La réponse est un tuple. Les tuples sont immuables en Python, donc une fois créés, vous ne pouvez pas ajouter, supprimer ou modifier leurs éléments. Les listes, ensembles et dictionnaires sont tous modifiables et peuvent être modifiés librement.
Qu'imprimera le code suivant ? pour i dans la plage (3): print (i)
Correct! La plage (3) de Python génère des nombres allant de 0 à 3, mais non inclus. Elle produit donc 0, 1 et 2. Cette indexation de base zéro est un concept fondamental dans Python et dans la plupart des langages de programmation modernes.
Pas tout à fait. La réponse est 0, 1, 2. La fonction range() de Python commence à 0 par défaut et s'arrête avant le nombre donné, donc range(3) produit 0, 1 et 2 — et non 1, 2, 3.
Quel mot-clé est utilisé pour définir une fonction en Python ?
Correct! Python utilise le mot-clé def pour définir les fonctions. C'est l'abréviation de « définir » et il est suivi du nom de la fonction, de parenthèses pour les paramètres et de deux points pour commencer le corps de la fonction.
Pas tout à fait. Le mot-clé correct est def. Python garde les choses concises — def est l'abréviation de « définir » et c'est le seul mot-clé utilisé pour créer des fonctions standard. Le mot « fonction » lui-même n'est pas un mot-clé en Python.
Quel est le résultat de l’expression suivante en Python ? booléen(0)
Correct! En Python, 0 est considéré comme « faux », donc bool(0) renvoie False. D'autres valeurs fausses incluent les chaînes vides, les listes vides, Aucune et 0,0. Tout nombre différent de zéro est évalué à True.
Pas tout à fait. La réponse est fausse. Python traite 0 comme une valeur fausse, donc sa conversion en booléen donne False. Ce concept de valeurs vraies et fausses est largement utilisé dans les expressions conditionnelles Python.
Que fait la fonction 'len()' en Python ?
Correct! La fonction len() renvoie le nombre d'éléments dans un objet, comme le nombre de caractères dans une chaîne ou le nombre d'éléments dans une liste. C'est l'une des fonctions intégrées de Python les plus fréquemment utilisées.
Pas tout à fait. La réponse est que len() renvoie le nombre d’éléments dans un objet. Par exemple, len('Python') renvoie 6 et len([1, 2, 3]) renvoie 3. Pour trouver le plus grand élément, vous utiliseriez plutôt la fonction max().
Votre score
/ 8
Merci d'avoir joué !
Graphiques linéaires
Tracer une série temporelle
Vous pouvez créer des graphiques linéaires avec Seaborn. Tout d'abord, vous devrez importer les bibliothèques que vous venez d'installer à l'aide d'IPython ou de Jupyter :
import numpy as np
import pandas as pd
import seaborn as sns
sns.set_theme()
import matplotlib.pyplot as plt
Les trois premières lignes importent NumPy, pandas et Seaborn en utilisant des noms raccourcis.
Nous pouvons démontrer un graphique linéaire qui représente une série chronologique à l'aide de l'un des ensembles de données intégrés inclus par Seaborn. Cela comprend une liste des vols des compagnies aériennes et du nombre de passagers de 1949 à 1960.
Tout d'abord, nous allons charger l'ensemble de données :
flights = sns.load_dataset('flights')
Cela crée un DataFrame pandas, dont nous pouvons examiner les premières lignes avec le head() méthode:
flights.head()
Nous pouvons ensuite créer un graphique linéaire de l'année sur l'axe des x suivi du nombre de passagers sur l'axe des y :
sns.lineplot(x='year',y='passengers',data=flights)
Le graphique apparaîtra dans une autre fenêtre.
Le graphique s'affichera dans une fenêtre séparée.
Graphiques à barres
Vous pouvez également créer des graphiques à barres. Nous allons appeler un autre ensemble de données, provenant d'un serveur d'un restaurant de New York qui a enregistré le montant de la facture avec le pourboire.
tips = sns.load_dataset('tips')
Nous allons créer un graphique à barres qui montre la facture totale sur plusieurs jours :
sns.catplot(x='day',y='total_bill',kind='bar',data=tips)
Nuage de points/régression
Trouver des tendances dans vos données
Un autre type de graphique utile est le nuage de points et la régression, ou l'affichage d'une ligne de tendance. Comme ceux-ci sont si courants dans les domaines des statistiques, de la science des données et des affaires, ils sont faciles à créer avec Seaborn.
Nous allons créer un nuage de points du pourboire par rapport à la facture totale, avec la facture totale sur l'axe des x et le pourboire sur l'axe des y. Le pourboire sera la variable dépendante et la facture totale sera la variable indépendante. Nous voulons voir s'il existe une relation entre la facture totale et le pourboire.
sns.relplot(x='total_bill',y='tip',data=tips)
Vous remarquerez peut-être que le pourboire semble augmenter avec la facture totale. Vous pourriez tracer une ligne droite qui monte de gauche à droite. En d’autres termes, il semble y avoir une relation linéaire positive entre les deux. Plus la facture est importante, plus le pourboire est important.
Nous pouvons également tracer cette ligne droite, ou la ligne de régression linéaire, à travers ce nuage de points. Le code est très similaire à celui que nous avons utilisé pour le nuage de points.
sns.regplot(x='total_bill',y='tip',data=tips)
Notez que vous ne pourrez pas obtenir les valeurs de l'équation de la droite de régression, telles que la pente et l'ordonnée à l'origine, pour former l'équation classique y = mx + b dont vous vous souvenez peut-être de l'algèbre du lycée. Vous devrez utiliser une autre bibliothèque, telle que SciPy ou statsmodels, qui vous donnera les valeurs de l'équation.
Ajustement des titres et sauvegarde
Préparez vos graphiques pour les heures de grande écoute
Bien que les tracés semblent bons en eux-mêmes, ils ne sont pas tout à fait prêts à être insérés dans vos graphiques ou présentations. Vous devrez probablement modifier les étiquettes sur les axes pour qu'elles paraissent plus compréhensibles par elles-mêmes.
Vous n'appellerez pas Seaborn mais la bibliothèque Matplotlib sous-jacente. Supposons que nous souhaitions publier le graphique de régression pourboire par rapport à la facture. Voici comment nous procéderions pour le nettoyer si nous voulions le mettre dans un rapport. Nous utiliserions le code du tracé de régression plus tôt, mais utiliserions Matplotlib pour ajouter un titre et modifier les étiquettes sur les axes.
sns.regplot(x='total_bill',y='tip',data=tips)
plt.title("Tip vs. total bill in a New York City restaurant")
plt.xlabel("Total bill (USD)")
plt.ylabel("Tip (USD)")
plt.show()
Cela ajoutera un titre et supprimera le trait de soulignement dans les axes, ainsi que précisera que les montants sont en dollars américains.
Pour enregistrer votre tracé, vous pouvez cliquer sur le Sauvegarder icône dans la fenêtre qui apparaît, ou vous pouvez utiliser cette commande :
plt.savefig('/path/to/file')
Vous pouvez ensuite le déposer dans votre document ou présentation. Matplotlib prend en charge de nombreux formats populaires, notamment PNG.
Il est facile de créer de superbes graphiques en Python
L'apprentissage de Python peut prendre un peu de temps, mais avec un peu d'effort, vous pouvez créer des tracés de qualité publication qui peuvent animer votre prochaine présentation ou rapport. Ne devriez-vous pas consacrer autant d'efforts aux visualisations qu'à vous assurer que les mots et les chiffres sont corrects ?
- Système opérateur
-
Ubuntu Linux 22.04 LTS
- Processeur
-
Intel Core i7-1360P de 13e génération
- GPU
-
Graphiques Intel Iris Xe
- BÉLIER
-
16 Go DDR5
- Stockage
-
Disque SSD de 512 Go
- Poids
-
2,71 livres
Le Dell XPS 13 Plus avec Linux combine un matériel puissant et un superbe écran dans un châssis léger et élégant pour créer un fantastique ordinateur portable Linux.
Vous pouvez lire l’article original (en Angais) sur le blogwww.howtogeek.com