Để truyền tham số cho hàm xử lý sự kiện phím on_key khi dùng fig.canvas.mpl_connect('key_press_event', on_key), ta định nghĩa hàm nhận đối số event chứa thông tin phím và tọa độ chuột.
Các bước
- Thiết lập figure size và autolayout.
- Tạo figure, axes và đặt giới hạn xlim, ylim.
- Định nghĩa onkey(event): kiểm tra event.key.isalpha() và event.xdata/ydata.
- Vẽ điểm tại vị trí chuột khi nhấn phím chữ.
- Kết nối sự kiện: cid = fig.canvas.mpl_connect('key_press_event', onkey).
- Hiển thị bằng show().
Ví dụ
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
fig, ax = plt.subplots()
ax.set_xlim(0, 10)
ax.set_ylim(0, 10)
def onkey(event):
if event.key.isalpha():
if event.xdata is not None and event.ydata is not None:
ax.plot(event.xdata, event.ydata, 'bo-')
fig.canvas.draw()
cid2 = fig.canvas.mpl_connect('key_press_event', onkey)
plt.show()
Kết quả
