Personnalisation des Axes
Personnalisation des graduations
Pour ajuster les graduations sur un graphique, utilisez les fonctions du module pyplot
:
xticks
pour personnaliser l’axe des abscisses ;yticks
pour personnaliser l’axe des ordonnées.
Les deux fonctions suivent la même syntaxe et possèdent deux paramètres principaux :
ticks
définit les positions où les graduations doivent apparaître. Vous pouvez utiliser toute structure de type tableau. Pour supprimer toutes les graduations, passez une liste vide ;labels
attribue un texte personnalisé à chaque position de graduation. Ce paramètre doit être utilisé conjointement avec le paramètreticks
.
Vous pouvez également inclure des arguments supplémentaires pour styliser les étiquettes et contrôler leur apparence.
Voici l’un des graphiques récemment créés :
Ce graphique semble plutôt correct, cependant, il serait préférable d’afficher davantage d’années sur l’axe des abscisses dans cette plage (1995-2020). Utilisons xticks()
à cet effet :
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle 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) # Plotting the data plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') # Adding a title and legend 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) # Displaying the plot plt.show()
Désormais, chaque deuxième année apparaît sur l’axe des abscisses. Cela a été réalisé en utilisant la fonction range()
avec un pas de 2
pour l’argument ticks
.
De plus, les étiquettes des graduations ont été tournées de 30 degrés dans le sens antihoraire à l’aide du mot-clé rotation
pour une meilleure lisibilité.
Les étiquettes des graduations peuvent également être spécifiées manuellement en passant une liste à l’argument 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 de l’axe des abscisses et de l’axe des ordonnées. 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://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Plotting the data plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') # Adding title, legend, and labels plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') plt.xticks(range(1995, 2021, 2), rotation=30) plt.ylabel('Temperature, °F') # Displaying the plot plt.show()
Il est également possible de modifier l'apparence de l'étiquette, par exemple, définir la taille de police via l'argument mot-clé fontsize
ou sa couleur via l'argument mot-clé color
.
De plus, il existe le paramètre loc
qui spécifie la position de l'étiquette (par défaut à center
).
Pour l'étiquette de l'axe des abscisses, les valeurs possibles sont
'left'
,'center'
et'right'
;Pour l'axe des ordonnées, au lieu de
'left'
et'right'
, il y a'top'
et'bottom'
.
Swipe to start coding
- Utilisez la fonction appropriée pour définir
data_linear
comme graduations de l’axe des abscisses. - Utilisez la fonction appropriée pour définir
'x'
comme étiquette de l’axe des abscisses. - Utilisez
'right'
comme position pour l’étiquette de l’axe des abscisses. - Utilisez la fonction appropriée pour définir
'y'
comme étiquette de l’axe des ordonnées. - Utilisez
'top'
comme position pour l’étiquette de l’axe des ordonnées. - Définissez le paramètre
rotation
à0
pour l’étiquette de l’axe des ordonnées.
Solution
Merci pour vos commentaires !