Introduction
Dans ce tutoriel, vous allez apprendre à utiliser Matplotlib pour créer des étiquettes d'échelonnage à partir d'une liste de valeurs. Lorsque vous utilisez .Axes.set_xticks, les étiquettes d'échelonnage sont définies sur les échelons actuellement choisis. Cependant, parfois il est préférable de laisser Matplotlib choisir dynamiquement le nombre d'échelons et leur espacement. Dans ce cas, vous pouvez vouloir déterminer l'étiquette d'échelonnage à partir de la valeur à l'échelon. Ce tutoriel vous montrera comment le faire.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder au carnet Jupyter pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations du carnet Jupyter.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous réglerons rapidement le problème pour vous.
Importez les bibliothèques nécessaires
Nous commençons par importer les bibliothèques nécessaires pour ce tutoriel, qui sont matplotlib.pyplot et MaxNLocator de matplotlib.ticker.
import matplotlib.pyplot as plt
from matplotlib.ticker import MaxNLocator
Créez un objet figure et axes
Ensuite, nous créons un objet figure et axes à l'aide de la méthode subplots() de matplotlib.pyplot.
fig, ax = plt.subplots()
Créez les données x et y
Nous créons les données x et y à l'aide de la méthode range() de la fonction range intégrée à Python.
xs = range(26)
ys = range(26)
Créez une liste d'étiquettes
Nous créons une liste d'étiquettes en utilisant la méthode list() pour convertir une chaîne de caractères de l'alphabet en une liste de caractères.
labels = list('abcdefghijklmnopqrstuvwxyz')
Créez une fonction de formatage
Nous créons une fonction de formatage qui détermine l'étiquette de graduation à partir de la valeur à l'emplacement de la graduation. Si la valeur de la graduation est un entier dans la plage de xs, l'étiquette correspondante de la liste labels est renvoyée. Sinon, une chaîne de caractères vide est renvoyée.
def format_fn(tick_val, tick_pos):
if int(tick_val) in xs:
return labels[int(tick_val)]
else:
return ''
Définissez le formatteur et le localisateur de graduations
Nous définissons le formatteur d'étiquettes de graduation de l'axe x sur la fonction de formatage créée à l'étape 5 en utilisant la méthode set_major_formatter(). Nous définissons également le localisateur d'étiquettes de graduation de l'axe x sur MaxNLocator(integer=True) pour vous assurer que les valeurs des graduations prennent des valeurs entières.
ax.xaxis.set_major_formatter(format_fn)
ax.xaxis.set_major_locator(MaxNLocator(integer=True))
Créez le tracé
Nous créons le tracé à l'aide de la méthode plot() de l'objet axes et en passant les données xs et ys.
ax.plot(xs, ys)
Affichez le tracé
Enfin, nous affichons le tracé à l'aide de la méthode show() de matplotlib.pyplot.
plt.show()
Sommaire
Dans ce tutoriel, vous avez appris à créer des étiquettes de graduations à partir d'une liste de valeurs à l'aide de Matplotlib. Nous avons tout d'abord créé une figure et un objet d'axes, puis créé les données x et y, et finalement créé une liste d'étiquettes. Nous avons ensuite créé une fonction de formatage qui détermine l'étiquette de graduation à partir de la valeur à l'emplacement de la graduation et défini le formatteur et le localisateur de graduations. Enfin, nous avons créé le tracé et l'affiché.