Recherche de site Web

Comment créer des graphiques d'apparence professionnelle en Python


Excel et autres tableurs sont omniprésents dans les affaires parce qu'ils vous permettent de créer des graphiques simples. Si vous voulez amener vos rapports et présentations au niveau supérieur, vous pourriez envisager d'apprendre Python pour créer des visualisations puissantes qui vous aideront à vous démarquer de la foule.

Configuration initiale

Créer la boîte à outils Python






Pour créer des graphiques en Python, vous devrez configurer un environnement avec les bons packages. Ceux-ci incluent :

  • NumPy, la colonne vertébrale de l'analyse de données sur Python,
  • pandas, une bibliothèque pour manipuler des données tabulaires dans des DataFrames
  • Seaborn, la bibliothèque qui générera les graphiques (avec un peu d'aide de Matplotlib)

Bien qu'ils ne soient pas des bibliothèques, IPython et Jupyter rendront votre vie plus facile pour manipuler des données avec Python. IPython améliore l'interactivité de Python, tandis que les Jupyter Notebooks facilitent le suivi de votre travail et le 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 à partir des instructions sur le site web de Pixi pour votre système basé sur le terminal, y compris macOS, Linux et PowerShell sur Windows.

Une fois que vous avez installé Pixi, vous pouvez installer l'environnement. Comme vous voudrez probablement les avoir à 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. Comme Matplotlib est une dépendance de Seaborn, il aurait probablement été installé de toute façon, mais nous voulons nous assurer qu'il est disponible, puisque nous allons exécuter certaines commandes directement sur Matplotlib. L'option --expose indique à Pixi de rendre l'exécutable d'IPython disponible pour Jupyter.

Notions de base de la programmation Python
Défi de culture générale

Vous pensez connaître vos boucles de vos listes ? Mettez vos connaissances en Python à l'épreuve.

Quelle est la bonne façon d'afficher 'Hello, World!' en Python 3 ?

Quel type de données l'expression type(3.14) renvoie-t-elle en Python ?

Quel symbole est utilisé pour écrire un commentaire sur une seule ligne en Python ?

Laquelle des structures de données Python suivantes est immuable ?

Que va afficher le code suivant ? pour i dans range(3) : print(i)

Quel mot-clé est utilisé pour définir une fonction en Python ?

Quelle est la sortie de l'expression suivante en Python ? bool(0)

Que fait la fonction 'len()' en Python ?

Votre score

Merci d'avoir joué !

Graphiques en lignes

Tracer une série chronologique

Vous pouvez créer des graphiques linéaires avec Seaborn. Tout d'abord, vous devrez importer les bibliothèques que vous venez d'installer en utilisant IPython ou 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 abrégés.

Nous pouvons démontrer un graphique linéaire qui représente une série chronologique en utilisant l'un des ensembles de données intégrés que Seaborn inclut. Cela comprend une liste de vols aériens et le nombre de passagers de 1949 à 1960.

Tout d'abord, nous allons charger le jeu de données :

flights = sns.load_dataset('flights')

Cela crée un DataFrame pandas, dont nous pouvons examiner les premières lignes avec la méthode head():

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 en barres. Nous allons appeler un autre ensemble de données, provenant d'un serveur dans un restaurant de New York qui a enregistré le montant de l'addition ainsi que le pourboire.

tips = sns.load_dataset('tips')

Nous allons créer un graphique à barres qui montre le total de la facture 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 ils sont si courants en statistiques, science des données et en affaires, ils sont faciles à créer avec Seaborn.

Nous allons créer un nuage de points de pourboire par rapport à l'addition totale, avec l'addition totale sur l'axe des x et le pourboire sur l'axe des y. Le pourboire sera la variable dépendante et l'addition totale sera la variable indépendante. Nous voulons voir s'il existe une relation entre l'addition totale et le pourboire.

sns.relplot(x='total_bill',y='tip',data=tips)

Vous pourriez remarquer que le pourboire semble augmenter en même temps que le montant total de l'addition. Vous pourriez tracer une ligne droite qui monte de la gauche vers la droite. En d'autres termes, il semble y avoir une relation linéaire positive entre les deux. Plus l'addition est grande, 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 au code 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 ligne de régression, telles que la pente et l'interception pour former l'équation classique y=mx + b que vous pourriez vous rappeler du cours d'algèbre au lycée. Vous devrez utiliser une autre bibliothèque, telle que SciPy ou statsmodels, qui vous donnera les valeurs de l'équation.

Ajuster les titres et enregistrer

Préparez vos graphiques pour le prime time

Bien que les graphiques aient l'air bien en eux-mêmes, ils ne sont pas tout à fait prêts à être insérés dans vos tableaux ou présentations. Vous devrez probablement modifier les étiquettes des axes afin qu'elles soient plus compréhensibles par elles-mêmes.

Vous ferez des appels non pas à Seaborn mais à la bibliothèque Matplotlib sous-jacente. Supposons que nous voulions publier le graphique de régression pour le pourboire par rapport à l'addition. Voici comment nous l'améliorerions si nous voulions l'inclure dans un rapport. Nous utiliserions le code pour le graphique de régression précédent mais utiliserions Matplotlib pour ajouter un titre et modifier les étiquettes des 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 soulignement dans les axes, ainsi que clarifiera que les montants sont en dollars américains.

Pour sauvegarder votre graphique, vous pouvez cliquer sur l’icône Enregistrer dans la fenêtre qui s’est ouverte, ou vous pouvez utiliser cette commande :

plt.savefig('/path/to/file')

Vous pouvez ensuite insérer ceci dans votre document ou présentation. Matplotlib prend en charge de nombreux formats populaires, y compris le PNG.


Il est facile de créer des graphiques d'aspect génial en Python

Il pourrait falloir un peu de temps pour apprendre Python, mais avec un peu d'effort, vous pouvez créer des graphiques de qualité publication qui peuvent dynamiser votre prochaine présentation ou rapport. Ne devriez-vous pas mettre autant d'effort dans les visualisations que vous en mettez pour vous assurer que les mots et les chiffres sont corrects ?

Articles connexes