키 누름 이벤트 연결

Beginner

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

소개

이 랩에서는 Matplotlib 에서 키 누름 이벤트에 연결하는 방법을 배우고, 이를 통해 키가 눌렸을 때 특정 작업을 수행할 수 있습니다. 플롯을 생성하고 'x' 키가 눌렸을 때 x-label 의 가시성을 토글하는 키 누름 이벤트 리스너를 설정합니다.

VM 팁

VM 시작이 완료되면, 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 접근하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.

학습 중에 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.

라이브러리 임포트

필요한 라이브러리인 matplotlib.pyplotnumpy를 임포트하는 것으로 시작합니다.

import matplotlib.pyplot as plt
import numpy as np

키 누름 이벤트 함수 정의

다음으로, 키가 눌렸을 때 호출될 함수 on_press를 정의합니다. 이 함수는 눌린 키에 대한 정보를 담고 있는 event 매개변수를 받습니다. 이 예제에서는 'x' 키가 눌렸을 때 x-label 의 가시성을 토글합니다.

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

플롯 생성 및 키 누름 이벤트 리스너 연결

np.random.rand()를 사용하여 임의의 데이터를 생성하여 간단한 플롯을 만듭니다. 그런 다음, fig.canvas.mpl_connect()를 사용하여 키 누름 이벤트 리스너를 설정하고, 우리가 감지하려는 이벤트의 이름 ('key_press_event') 과 이벤트가 발생했을 때 호출할 함수 (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()

코드 실행

코드를 파일에 저장하고 Python 환경에서 실행합니다. x-label 이 "easy come, easy go"인 플롯이 표시됩니다. 'x' 키를 누르면 x-label 의 가시성이 토글됩니다.

요약

이 랩에서는 Matplotlib 에서 키 누름 이벤트에 연결하는 방법을 배웠습니다. 플롯을 생성하고 'x' 키를 누르면 x-label 의 가시성을 토글하는 키 누름 이벤트 리스너를 설정했습니다. 이것은 Matplotlib 에서 키 누름 이벤트를 사용하여 수행할 수 있는 작업의 한 예일 뿐입니다.