Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

เก็บพิกัดเมาส์คลิกด้วย Matplotlib


ภาพรวม

ใช้ Event "button_press_event" เพื่อจับพิกัด (x, y) เมื่อคลิกเมาส์บนกราฟ

ขั้นตอน

  1. ตั้งค่า Figure size และ Padding
  2. สร้าง Figure และ Subplot
  3. พลอตเส้นข้อมูลตัวอย่าง
  4. ผูกฟังก์ชัน onclick กับ Event button_press_event
  5. ใน onclick พิมพ์ event.xdata และ event.ydata
  6. แสดงกราฟด้วย plt.show()

ตัวอย่างโค้ด

from matplotlib import pyplot as plt

plt.rcParams['backend'] = 'TkAgg'
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

def onclick(event):
    print([event.xdata, event.ydata])

fig, ax = plt.subplots()
ax.plot(range(10))
fig.canvas.mpl_connect('button_press_event', onclick)
plt.show()

ผลลัพธ์

คลิกที่กราฟจะพิมพ์พิกัดใน Console เช่น:

[6.277811659536052, 6.218189947945731]
[4.9416949672083685, 3.7079096112932475]
[8.221254287227506, 3.4145010811941963]

การประยุกต์ใช้

  • เก็บพิกัดเพื่อการวิเคราะห์หรือ Annotation
  • สร้างเครื่องมือ Label ข้อมูลด้วยตนเอง