Contenu du cours
Visualisation Ultime Avec Python
Visualisation Ultime Avec Python
Personnalisation des Axes
Personnalisation des graduations
Pour ajuster les graduations, le module pyplot
dispose de deux fonctions avec une syntaxe identique :
-
xticks()
pour l'axe des x ; -
yticks()
pour l'axe des y.
Les deux fonctions ont deux paramètres les plus importants :
-
ticks
spécifie où vous souhaitez que les graduations apparaissent (utilisez un type semblable à un tableau). Vous pouvez supprimer les graduations en passant une liste vide ; -
labels
attribue des étiquettes aux graduations à leurs emplacements spécifiés. Ce paramètre doit être utilisé avec le paramètre ticks.
Vous pouvez également fournir des arguments supplémentaires pour contrôler l'apparence des étiquettes.
Il est maintenant temps de voir quelques exemples. Voici l'un des graphiques que nous avons récemment créés :
Tout semble assez bien avec ce graphique, cependant, il serait préférable d'avoir plus d'années sur l'axe des x dans cette plage (1995-2020). Utilisons xticks()
à cet effet :
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' # Loading the dataset with the average yearly temperatures in Boston and Seattle weather_df = pd.read_csv(url, index_col=0) plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') # Setting the x-ticks coordinates and their rotation plt.xticks(range(1995, 2021, 2), rotation=30) plt.show()
Maintenant, il y a chaque deuxième année dans cette plage sur l'axe des x. Nous avons accompli cela en utilisant la fonction range()
(avec le paramètre de pas 2
) pour l'argument ticks
.
De plus, nous avons utilisé un argument mot-clé rotation
pour faire pivoter les étiquettes des ticks de 30 degrés dans le sens inverse des aiguilles d'une montre pour une meilleure lisibilité.
Nous pourrions également spécifier la liste des étiquettes pour les ticks en définissant les labels
(par exemple, labels = ['label1', 'label2']
).
Personnalisation des étiquettes des axes
Vous pouvez utiliser les fonctions xlabel()
et ylabel()
du module pyplot
pour définir les étiquettes pour l'axe des x et l'axe des y. Ces fonctions nécessitent un seul paramètre : l'étiquette elle-même (une string
).
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') plt.xticks(range(1995, 2021, 2), rotation=30) # Setting the label for the y-axis plt.ylabel('Temperature, °F') plt.show()
Il est également possible de modifier l'apparence de l'étiquette, par exemple, définir la taille de la police via l'argument fontsize
ou sa couleur via l'argument color
.
De plus, il existe un paramètre loc
qui spécifie la position de l'étiquette (center
par défaut).
- Pour l'étiquette de l'axe des x,
'left'
,'center'
et'right'
sont des valeurs possibles; - Pour l'axe des y, au lieu de
'left'
et'right'
, il y a'top'
et'bottom'
.
Vous pouvez explorer plus dans la documentation : xlabel, ylabel.
Swipe to start coding
- Utilisez la fonction correcte pour définir
data_linear
comme graduations de l'axe des x. - Utilisez la fonction correcte pour définir
'x'
comme étiquette de l'axe des x. - Utilisez
'right'
comme position pour l'étiquette de l'axe des x. - Utilisez la fonction correcte pour définir
'y'
comme étiquette de l'axe des y. - Utilisez
'top'
comme position pour l'étiquette de l'axe des y. - Définissez le paramètre
rotation
à0
pour l'étiquette de l'axe des y.
Solution
Merci pour vos commentaires !
Personnalisation des Axes
Personnalisation des graduations
Pour ajuster les graduations, le module pyplot
dispose de deux fonctions avec une syntaxe identique :
-
xticks()
pour l'axe des x ; -
yticks()
pour l'axe des y.
Les deux fonctions ont deux paramètres les plus importants :
-
ticks
spécifie où vous souhaitez que les graduations apparaissent (utilisez un type semblable à un tableau). Vous pouvez supprimer les graduations en passant une liste vide ; -
labels
attribue des étiquettes aux graduations à leurs emplacements spécifiés. Ce paramètre doit être utilisé avec le paramètre ticks.
Vous pouvez également fournir des arguments supplémentaires pour contrôler l'apparence des étiquettes.
Il est maintenant temps de voir quelques exemples. Voici l'un des graphiques que nous avons récemment créés :
Tout semble assez bien avec ce graphique, cependant, il serait préférable d'avoir plus d'années sur l'axe des x dans cette plage (1995-2020). Utilisons xticks()
à cet effet :
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' # Loading the dataset with the average yearly temperatures in Boston and Seattle weather_df = pd.read_csv(url, index_col=0) plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') # Setting the x-ticks coordinates and their rotation plt.xticks(range(1995, 2021, 2), rotation=30) plt.show()
Maintenant, il y a chaque deuxième année dans cette plage sur l'axe des x. Nous avons accompli cela en utilisant la fonction range()
(avec le paramètre de pas 2
) pour l'argument ticks
.
De plus, nous avons utilisé un argument mot-clé rotation
pour faire pivoter les étiquettes des ticks de 30 degrés dans le sens inverse des aiguilles d'une montre pour une meilleure lisibilité.
Nous pourrions également spécifier la liste des étiquettes pour les ticks en définissant les labels
(par exemple, labels = ['label1', 'label2']
).
Personnalisation des étiquettes des axes
Vous pouvez utiliser les fonctions xlabel()
et ylabel()
du module pyplot
pour définir les étiquettes pour l'axe des x et l'axe des y. Ces fonctions nécessitent un seul paramètre : l'étiquette elle-même (une string
).
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') plt.xticks(range(1995, 2021, 2), rotation=30) # Setting the label for the y-axis plt.ylabel('Temperature, °F') plt.show()
Il est également possible de modifier l'apparence de l'étiquette, par exemple, définir la taille de la police via l'argument fontsize
ou sa couleur via l'argument color
.
De plus, il existe un paramètre loc
qui spécifie la position de l'étiquette (center
par défaut).
- Pour l'étiquette de l'axe des x,
'left'
,'center'
et'right'
sont des valeurs possibles; - Pour l'axe des y, au lieu de
'left'
et'right'
, il y a'top'
et'bottom'
.
Vous pouvez explorer plus dans la documentation : xlabel, ylabel.
Swipe to start coding
- Utilisez la fonction correcte pour définir
data_linear
comme graduations de l'axe des x. - Utilisez la fonction correcte pour définir
'x'
comme étiquette de l'axe des x. - Utilisez
'right'
comme position pour l'étiquette de l'axe des x. - Utilisez la fonction correcte pour définir
'y'
comme étiquette de l'axe des y. - Utilisez
'top'
comme position pour l'étiquette de l'axe des y. - Définissez le paramètre
rotation
à0
pour l'étiquette de l'axe des y.
Solution
Merci pour vos commentaires !