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

จะรับพิกัดพิกเซลสำหรับ scatterplot ที่สร้างโดย Matplotlib ได้อย่างไร


ในการรับพิกัดพิกเซลสำหรับ 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 ได้อย่างไร จะรับพิกัดพิกเซลสำหรับ scatterplot ที่สร้างโดย Matplotlib ได้อย่างไร

นอกจากนี้ยังจะพิมพ์พิกัดพิกเซลของ 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