Introduction
Dans ce laboratoire, nous allons apprendre à nous connecter aux événements de pression de touches dans Matplotlib, ce qui nous permet d'effectuer certaines actions lorsqu'une touche est pressée. Nous allons créer un tracé et configurer un écouteur d'événements de pression de touches qui basculera la visibilité de l'étiquette x lorsque la touche 'x' est pressée.
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 la pratique.
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.
Importation des bibliothèques
Nous commençons par importer les bibliothèques requises : matplotlib.pyplot et numpy.
import matplotlib.pyplot as plt
import numpy as np
Définir la fonction d'événement de pression de touches
Ensuite, nous définissons une fonction on_press qui sera appelée lorsqu'une touche est pressée. Cette fonction prend un paramètre event qui contient des informations sur la touche qui a été pressée. Dans cet exemple, nous allons basculer la visibilité de l'étiquette x lorsque la touche 'x' est pressée.
def on_press(event):
print('press', event.key)
sys.stdout.flush()
if event.key == 'x':
visible = xl.get_visible()
xl.set_visible(not visible)
fig.canvas.draw()
Créer le tracé et connecter l'écouteur d'événements de pression de touches
Nous créons un tracé simple en utilisant np.random.rand() pour générer des données aléatoires. Ensuite, nous configurons l'écouteur d'événements de pression de touches en utilisant fig.canvas.mpl_connect() et en passant le nom de l'événement pour lequel nous voulons écouter ('key_press_event') et la fonction que nous voulons appeler lorsque l'événement se produit (on_press).
fig, ax = plt.subplots()
fig.canvas.mpl_connect('key_press_event', on_press)
ax.plot(np.random.rand(12), np.random.rand(12), 'go')
xl = ax.set_xlabel('easy come, easy go')
ax.set_title('Press a key')
plt.show()
Exécuter le code
Enregistrez le code dans un fichier et exécutez-le dans un environnement Python. Un tracé sera affiché avec l'étiquette x "easy come, easy go". Lorsque la touche 'x' est pressée, l'étiquette x basculera entre visible et invisible.
Résumé
Dans ce laboratoire, nous avons appris à nous connecter à des événements de pression de touches dans Matplotlib. Nous avons créé un tracé et configuré un écouteur d'événements de pression de touches qui bascule la visibilité de l'étiquette x lorsque la touche 'x' est pressée. Ceci n'est qu'un exemple de ce qui peut être fait avec des événements de pression de touches dans Matplotlib.