ในการรับพิกัดพิกเซลสำหรับ scatterplot ที่สร้างโดย matplotlib เราสามารถทำตามขั้นตอนต่อไปนี้ -
- กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
- เริ่มต้นตัวแปร "n" เพื่อเก็บจำนวนข้อมูลตัวอย่าง
- สร้างร่างและชุดแผนย่อย
- สร้างโครงแบบกระจาย
- รับจุดข้อมูล x และ y โดยใช้ get_data() วิธีการ
- รับค่าพิกเซลของพล็อต
- รับข้อมูลการแปลงพิกเซล
- รับความกว้างและความสูงของรูปเป็นจุดหรือพิกเซล
- พิมพ์ค่าพิกเซล x และ y
- หากต้องการแสดงรูป ให้ใช้ show() วิธีการ
ตัวอย่าง
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
n = 10
fig, ax = plt.subplots()
points, = ax.plot(np.random.random(n), np.random.random(n), 'r*')
x, y = points.get_data()
pixels = ax.transData.transform(np.vstack([x, y]).T)
x, y = pixels.T
width, height = fig.canvas.get_width_height()
y = height - y
print("The pixel coordinates are: ")
for xp, yp in zip(x, y):
print('{x:0.2f}\t{y:0.2f}'.format(x=xp, y=yp))
plt.show() ผลลัพธ์
มันจะสร้างผลลัพธ์ต่อไปนี้

นอกจากนี้ยังจะพิมพ์พิกัดพิกเซลของ scatterplot ที่สร้างโดย matplotlib บนคอนโซล
The pixel coordinates are: 564.93 161.83 446.27 112.60 153.39 247.65 236.90 258.34 519.10 301.04 237.66 118.16 149.71 303.29 386.74 105.81 172.93 121.81 110.94 116.20