Conectando a Eventos de Pressionamento de Tecla

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Neste laboratório, aprenderemos como conectar-se a eventos de pressionamento de teclas (keypress events) no Matplotlib, o que nos permite realizar certas ações quando uma tecla é pressionada. Criaremos um gráfico e configuraremos um ouvinte de eventos de pressionamento de teclas que alternará a visibilidade do rótulo do eixo x (x-label) quando a tecla 'x' for pressionada.

Dicas para a VM (VM Tips)

Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.

Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.

Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.

Importar Bibliotecas

Começamos importando as bibliotecas necessárias: matplotlib.pyplot e numpy.

import matplotlib.pyplot as plt
import numpy as np

Definir a Função do Evento de Pressionamento de Tecla

Em seguida, definimos uma função on_press que será chamada quando uma tecla for pressionada. Esta função recebe um parâmetro event que contém informações sobre a tecla que foi pressionada. Neste exemplo, alternaremos a visibilidade do rótulo do eixo x (x-label) quando a tecla 'x' for pressionada.

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()

Criar o Gráfico e Conectar o Listener de Evento de Pressionamento de Tecla

Criamos um gráfico simples usando np.random.rand() para gerar dados aleatórios. Em seguida, configuramos o listener de evento de pressionamento de tecla usando fig.canvas.mpl_connect() e passando o nome do evento que queremos ouvir ('key_press_event') e a função que queremos chamar quando o evento ocorre (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()

Executar o Código

Salve o código em um arquivo e execute-o em um ambiente Python. Um gráfico será exibido com o rótulo do eixo x (x-label) "easy come, easy go". Quando a tecla 'x' for pressionada, o rótulo do eixo x alternará entre visível e invisível.

Resumo

Neste laboratório, aprendemos como conectar a eventos de pressionamento de tecla (keypress events) no Matplotlib. Criamos um gráfico e configuramos um listener de evento de pressionamento de tecla que alterna a visibilidade do rótulo do eixo x (x-label) quando a tecla 'x' é pressionada. Este é apenas um exemplo do que pode ser feito com eventos de pressionamento de tecla no Matplotlib.