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

Matplotlib - แสดงพิกัดจุดเมื่อคลิกเมาส์

สร้าง Custom Mouse Cursor เพื่อแสดงพิกัด (x,y) เมื่อคลิกบน Plot

ขั้นตอน

  1. ตั้งค่าขนาด Figure
  2. สร้าง Figure
  3. ผูกฟังก์ชัน mouse_event กับ 'button_press_event'
  4. สร้างข้อมูล X, Y
  5. วาดกราฟ
  6. แสดงผล

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

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

def mouse_event(event):
    print('x: {} and y: {}'.format(event.xdata, event.ydata))

fig = plt.figure()
cid = fig.canvas.mpl_connect('button_press_event', mouse_event)

x = np.linspace(-10, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.show()

ผลลัพธ์

คลิกที่จุดต่างๆ จะแสดงพิกัดใน Console

x: -3.099305446290094 and y: -0.013811108549791173
x: -0.2865652183685867 and y: -0.2067543563498595
x: -3.0280968329249927 and y: -0.1844916739113902
x: -5.7696284474814 and y: 0.4240216460734405
x: -3.9182044999887626 and y: 0.6837529411889172

Matplotlib - แสดงพิกัดจุดเมื่อคลิกเมาส์